紧急求助:关于SOAP的问题!(200分)

  • 主题发起人 主题发起人 jacklin
  • 开始时间 开始时间
J

jacklin

Unregistered / Unconfirmed
GUEST, unregistred user!
Var
p : ISoapHello;
begin
p := HTTPRIO1 As ISoapHello;//经常会出错,Msg:'Interface not supported.'
....
end;
有时可不会出现这个错误。各位有经验的大虾,是什么原因呢?
 
ISoapHello定义如下:
ISoapHello = interface(IInvokable)
['{E6EBD4B2-5553-485E-9C03-32DDE7C55FDA}']
function Hello:Integer; stdcall;
end;
 
在定义HTTTPRIO1的url属性的时候,使用类似http://server/webservice/hell.exe/soap/ISoapHello
形式的URL,指明所用的接口,就是在“soap”后面要跟你所用的接口
不然的话在WEB App Debug里不会出错,但是到实际环境里(比如IIS)好像一定会出现你所说的问题,我也碰到过
如果需要用一个HTTPRIO对应不同的接口,可以根据情况动态修改URL属性
 
注意几个URL:
Web Service Importer的wizard的URL栏内填:
http://myhost/soap/myserver.dll/wsdl/IMyInterface
THTTPRio控件(在WEB Service页)的URL属性中填:
http://myhost/soap/myserver.dll/soap
myhost为服务器IP地址
myserver.dll为服务器端的服务程序
IMyInterface为服务器端注册的接口
 
to 蟑螂:那些配置我都配好了,不然应该会连不上吧。
to jacer:IP地址也好,解析地址也好,我全都试过了,我一直不明白为何会出现这样的
情况。我的解决办法是:出现这种情况时,把dll的文件名改动一下,然后重新生成client
接口程序,OK了:)。
各位有何高见呢?
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部