码迷,mamicode.com
首页 > Windows程序 > 详细

用delphi的THTTPRIO控件调用c#写的webservice。

时间:2014-11-25 12:56:14      阅读:317      评论:0      收藏:0      [点我收藏+]

标签:des   style   http   io   ar   color   sp   for   文件   

用delphi的THTTPRIO控件调用c#写的webservice

下面是我调试时遇到的一些问题:

1,导入wsdl文件:file--new----other----wenservice---WSDLimporter---输入wsdl地址:如下:http://10.0.1.128:7777/ShineMediaPublish/WebService/WebServiceCall.asmx?wsdl

注意末尾的:‘?wsdl‘不能少。要不可能会说找不到。

2,设置THTTPRIO控件的属性:

开始把http://10.0.1.128:7777/ShineMediaPublish/WebService/WebServiceCall.asmx?wsdl赋给了wsdlLocation属性。连接时总是报错。

后来赋给URL属性,就不报错了。

3,传递参数是web服务端总为空:

在导入的接口单元的声明部分添加如下代码:

InvRegistry.RegisterInvokeOptions(TypeInfo(WebServiceCallSoap),ioDocument);//其中红色部分为导入接口名称。

下面是客户端的简单代码:

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, InvokeRegistry, StdCtrls, Rio, SOAPHTTPClient,WebServiceCall;

type
TForm1 = class(TForm)
htpr1: THTTPRIO;
edt1: TEdit;
btn1: TButton;
procedure btn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btn1Click(Sender: TObject);
var
s:WideString;
begin
s:=‘打分得分‘;
edt1.Text:=(htpr1 as WebServiceCallSoap).OperaterLogin(‘1‘,‘dd‘,s);//operaterLogin为接口方法。

end;

end.

用delphi的THTTPRIO控件调用c#写的webservice。

标签:des   style   http   io   ar   color   sp   for   文件   

原文地址:http://my.oschina.net/u/582827/blog/348474

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!