THTTPRIO组件调用C#写的webservice出现错误
THTTPRIO组件调用C#写的webservice出现异常
我用c#写了个webservice放在公网上,客户端软件用delphi编写,使用了 THTTPRIO组件调用webservice,操作系统是xp SP2.
可是调用时出现 Access violation at address 00E36B17 异常..如果我 在 系统属性-> 高级->性能->数据执行保护 中添加该程序的路径,则问题可以解决 。。但是我的客户端程序是共享程序,放到网上供人下载使用的,绝大多数用户是都是小白,不可能要求他们进行那么麻烦的设置。有没有相应的解决方案? 我的调用方法如下:
HTTPRIO_Data:THTTPRIO;(直接拖动控件到窗口,用wsdl importer引入wsdl)
procedure TForm1.Button1Click(Sender: TObject);
var
SerURL,Param,XML:String;
begin
CoInitialize(nil);
SerURL:= 'http://****.asmx'; //webserviece路径
Param:= '****'; //webservice方法的参数
InvRegistry.RegisterInvokeOptions(TypeInfo(StockDataSoap),ioDocument);
HTTPRIO_Data.URL:= SerURL;
XML:=(HTTPRIO_Data as StockDataSoap).GetServerInf(Param);//返回字符串,GetServerInf为方法名
showmessage(xml);
CoUnInitialize;
end;
end;
------解决方案--------------------
交互编程呀,一定要注意接口的
我用c#写了个webservice放在公网上,客户端软件用delphi编写,使用了 THTTPRIO组件调用webservice,操作系统是xp SP2.
可是调用时出现 Access violation at address 00E36B17 异常..如果我 在 系统属性-> 高级->性能->数据执行保护 中添加该程序的路径,则问题可以解决 。。但是我的客户端程序是共享程序,放到网上供人下载使用的,绝大多数用户是都是小白,不可能要求他们进行那么麻烦的设置。有没有相应的解决方案? 我的调用方法如下:
HTTPRIO_Data:THTTPRIO;(直接拖动控件到窗口,用wsdl importer引入wsdl)
procedure TForm1.Button1Click(Sender: TObject);
var
SerURL,Param,XML:String;
begin
CoInitialize(nil);
SerURL:= 'http://****.asmx'; //webserviece路径
Param:= '****'; //webservice方法的参数
InvRegistry.RegisterInvokeOptions(TypeInfo(StockDataSoap),ioDocument);
HTTPRIO_Data.URL:= SerURL;
XML:=(HTTPRIO_Data as StockDataSoap).GetServerInf(Param);//返回字符串,GetServerInf为方法名
showmessage(xml);
CoUnInitialize;
end;
end;
------解决方案--------------------
交互编程呀,一定要注意接口的