怎样调用远程方法?
edit2.Text:=DataModule2.DCOMConnection1.AppServer.update(edit1.Text,tempstream);
其中update是远程方法,这样调用出错。
[Error] dm.pas(46): Type not allowed in Variant Dispatch call
请问怎样调用?
问题点数:0、回复次数:3Top
1 楼soundbug(兼职乞丐)回复于 2003-12-04 17:55:18 得分 0
update远程方法返回的类型是否为oleVariant类型?Top
2 楼studysupermap(aaazha)回复于 2003-12-04 18:21:01 得分 0
不是,是string类型。
我怎样把这个函数写入到中间层tlb文件中去。
function Tserver.update(a:string;b:tmemorystream):string;
begin
ADOStoredProc1.Parameters.ParamByName('a').value:= a;
ADOStoredProc1.Parameters.ParamByName('b').LoadFromStream(b,ftblob);
ADOStoredProc1.ExecProc;
result:=ADOStoredProc1.Parameters.ParamByName('a').value;
end;Top
3 楼soundbug(兼职乞丐)回复于 2003-12-09 11:34:28 得分 0
你试试先定义一个string类型的变量,然后再把这个变量赋值给Edit2.Text
var
TempStr: string;
--------------
TempStr :=DataModule2.DCOMConnection1.AppServer.update(edit1.Text,tempstream);
Edit2.Text := TempStr;
Top




