delphi datasnap 三层

请问一下:delphi用三层的时候,比如我在服务端写一个用户登录的验证函数,如果要传4个参数,分别是用户名、密码、是否成功、错误信息等;然后我在客户端调用这个函数去验证用... 请问一下:delphi 用三层的时候,比如我在服务端写一个用户登录的验证函数,如果要传4个参数,分别是用户名、密码、是否成功、错误信息等;然后我在客户端调用这个函数去验证用户的登录信息是否正确;请问服务端的函数怎么写啊,客户端怎么去调用这个函数?求这个函数的代码和调用的语句。
比如,这是我的服务端的函数:
procedure TTestServer.Test1(const Value1, Value2: WideString;var Result: OleVariant);beginif (Trim(Value1) = 'sa') and (Trim(Value2) = 'sa') thenResult := 'OK'elseResult := 'NO';end;
这是我的客户端传递的参数的类型和调用服务端的方法:
UserCode, UserPw: WideString;OMsg, isOK: OleVariant;
DataModule2.con1.AppServer.Test1(UserCode, UserPw, OMsg);
图片是所报的错误信息:

请问:这是哪儿错了啊,我传递的参数类型错了吗?
展开
 我来答
HJ_3000
2018-01-26 · TA获得超过563个赞
知道小有建树答主
回答量:1264
采纳率:78%
帮助的人:56.3万
展开全部
那就把OleVariant换成WideString试试。
为何不用DataSnap或者WebService,以后扩展到移动应用更方便。
更多追问追答
追问
哪个地方?还有我是想返回一个 OK 或者是 NO ,这样写为什么不对啊,我看别人的例子客户端调用的方法是这样的,一模一样,就是服务端的那个赋值有点不一样,我发现只要把赋值改成这样就报错。
追答
把 OleVariant 还成 WideString,只是一种排除错误的方法。如果换了没报错,就可确定是这里的问题。
人间杂货店
2018-03-02 · 数据只告诉我们事实,知识才能告诉我们真实
人间杂货店
采纳数:1319 获赞数:4312

向TA提问 私信TA
展开全部
是不是传的数据类型有问题,实在不行就传JSON
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式