哪里有调用web sercices的例子 哪里有调用web sercices的例子,能直接在delphi7中使用的,或c++builder5中使用的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 看以下的一个例子(转) 先用vs.net创建一个简单的webservices; 1.打开vs.net2003 新建一个webservises 命名为WebService1 2.添加两个WebMethod [WebMethod] public string HelloWorld() { return "Hello World 用.NET写的web服务!!^_^"; } [WebMethod] public string datetostr(DateTime dt)//将时间转换为字符 { return dt.ToUniversalTime().ToString(); } 完整代码如下: using System; using System.Collections; using System.ComponentModel; using System.Data; using System.Diagnostics; using System.Web; using System.Web.Services; namespace WebService1 { public class Service1 : System.Web.Services.WebService { public Service1() { //CODEGEN: 该调用是 ASP.NET Web 服务设计器所必需的 InitializeComponent(); } #region 组件设计器生成的代码 //Web 服务设计器所必需的 private IContainer components = null; /// <summary> /// 设计器支持所需的方法 - 不要使用代码编辑器修改 /// 此方法的内容。 /// </summary> private void InitializeComponent() { } /// <summary> /// 清理所有正在使用的资源。 /// </summary> protected override void Dispose( bool disposing ) { if(disposing && components != null) { components.Dispose(); } base.Dispose(disposing); } #endregion [WebMethod] public string HelloWorld() { return "Hello World 用.NET写的web服务!!^_^"; } [WebMethod] public string datetostr(DateTime dt)//将时间转换为字符 { return dt.ToUniversalTime().ToString(); } } } 2.编译调试: 我们的webservices已经可以用了; 下面在打开delphi 7 新建一个应用程序: 拖两个button两个edit 和一个HTTPRIO(在webservices页上)到窗体上; 3.接下来: File->new->other->webservices->WSDL importer 点击next 导入 保存unit Service1 4.在unit1(form1 的单元文件)中引用Service1, XSBuiltIns 5. HTTPRIO1的 WSDLLocation 属性设置为'http://localhost/WebService1/Service1.asmx?WSDL' 6.添加form1 的代码如下: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, InvokeRegistry, Rio, SOAPHTTPClient; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Edit1: TEdit; Edit2: TEdit; HTTPRIO1: THTTPRIO; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation uses XSBuiltIns, Service1; {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); var dtm:TXSDateTime; begin dtm:=TXSDateTime.Create; dtm:=DateTimeToXSDateTime(now); Edit1.Text:=(HTTPRIO1 as Service1Soap).datetostr(dtm); dtm.free; end; procedure TForm1.Button2Click(Sender: TObject); begin Edit2.Text:=(HTTPRIO1 as Service1Soap).HelloWorld; end; end. 7.编译运行要在delphi中加一句InvRegistry.RegisterInvokeOptions(TypeInfo(ServiceSoap), ioDocument); imho888,你有没有作好的能运行的给我发一份,我的QQ号上86872182,谢谢了我的网上找了半天,都按那样作了,不知为什么总出错 是啊,你报什么错啊,前段时间发webserice的帖子挺热的 function的提问 都是Delphi2005惹的祸!~~ 即使运行3D游戏时程序也处于最前,可以吗?要如何实现? odbc????????? 请提供思路? 怎么调试DLL 右键弹出菜单问题:我所定义的事件滞后一次,该如何解决! delphi里结束语end问题????????????? 怎么解决动态生成PANEL时的闪烁问题? 如何使stringgrid的某一列只具有只讀屬性 从表A取一个字段存到表B里做为关键字,并在表B为这个新加的记录其他字段写数据。 如何把颜色为32位的图像转成颜色为16位的图像
先用vs.net创建一个简单的webservices;
1.打开vs.net2003 新建一个webservises 命名为WebService1
2.添加两个WebMethod
[WebMethod]
public string HelloWorld()
{
return "Hello World 用.NET写的web服务!!^_^";
}
[WebMethod]
public string datetostr(DateTime dt)//将时间转换为字符
{
return dt.ToUniversalTime().ToString();
}
完整代码如下:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Web;
using System.Web.Services;
namespace WebService1
{
public class Service1 : System.Web.Services.WebService
{
public Service1()
{
//CODEGEN: 该调用是 ASP.NET Web 服务设计器所必需的
InitializeComponent();
}
#region 组件设计器生成的代码
//Web 服务设计器所必需的
private IContainer components = null;
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
}
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
protected override void Dispose( bool disposing )
{
if(disposing && components != null)
{
components.Dispose();
}
base.Dispose(disposing);
}
#endregion
[WebMethod]
public string HelloWorld()
{
return "Hello World 用.NET写的web服务!!^_^";
}
[WebMethod]
public string datetostr(DateTime dt)//将时间转换为字符
{
return dt.ToUniversalTime().ToString();
}
}
}
2.编译调试:
我们的webservices已经可以用了;
下面在打开delphi 7
新建一个应用程序:
拖两个button两个edit 和一个HTTPRIO(在webservices页上)到窗体上;
3.接下来:
File->new->other->webservices->WSDL importer
点击next 导入
保存unit Service1
4.在unit1(form1 的单元文件)中引用Service1, XSBuiltIns
5. HTTPRIO1的
WSDLLocation 属性设置为'http://localhost/WebService1/Service1.asmx?WSDL'
6.添加form1 的代码如下:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, InvokeRegistry, Rio, SOAPHTTPClient;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Edit1: TEdit;
Edit2: TEdit;
HTTPRIO1: THTTPRIO;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses
XSBuiltIns,
Service1;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
dtm:TXSDateTime;
begin
dtm:=TXSDateTime.Create;
dtm:=DateTimeToXSDateTime(now);
Edit1.Text:=(HTTPRIO1 as Service1Soap).datetostr(dtm);
dtm.free;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Edit2.Text:=(HTTPRIO1 as Service1Soap).HelloWorld;
end;
end.
7.编译运行
要在delphi中加一句InvRegistry.RegisterInvokeOptions(TypeInfo(ServiceSoap), ioDocument);
我的网上找了半天,都按那样作了,不知为什么总出错