一、delphi开发WebService1、打开delphi,选择NewotherWebService,在右侧选择SOAPServerApplicatio
,点击OK
2、上一步点击OK后,会出现一个提示窗口,这里选择ISAPI动态链接库,点击OK进入下一步
f3、此时会提示一个确认窗口,询问是否为SOAP模块创建接口,这样要选择YES,delphi会为您自动创建一个接口,否则自己动手写会很麻烦
4、点击YES后,delphi会提示你输入接口服务名称,这个名称在后面就是接口名和实现此接口的类名,这里我们键入MyTest,其他选项不要动,点击OK
5、点OK后,delphi会自动创建两个单元,一个是MyTestI
tf接口单元,一个是MyTestImpl接口实现单元
6、在MyTestI
tf接口单元里面,接口声明后面写入你的接口函数,这个函数就是后面给别人调用实现一定功能的函数。注意:函数声明后面一定要加上stdcall约束参数传入方式,否则其他语言可能无法调用此接口函数
f7、切换到MyTestImpl接口实现单元,发现delphi已经为我们创建好了接口实现类TMyTest,在类的声明里面写上刚才的接口函数。当然也可以写入其他函数供你的接口函数内部调用,这里我重新构造了类的Create函数及析构函数
f8、保存项目,编译生成DLL文件,此时delphi编写WebService就完成了,如此简单
配置IIS后,部署程序。打开IIS,找到虚拟目录,浏览那个程序。
1点击IMyTest后面的WSDL,会出现如下界面。这是一个XML文档,描述WSDL的细节,浏览器地址栏中的地址是我们需要的,复制下来
f2返回delphi,新建一个VCL项目。接着选择NewotherWebService,选择WSDLimporter,点击OK
f3出现一个提示窗口,键入第7步得到的WSDL网址,如果WebService不在本机,注意IP地址要修改
10、4点击NEXTNEXTOK,delphi会自动引入一个单元,这个单元就是WebService的接口单元,里面会自动生成一个Get开头方法。在VCL单元引用这个单元,声明一个变量变量的类型就是Get开头方法的返回值类型varobjIMyTest,使用这个Get方法给此变量赋值,接下来可以用这个变量调用接口函数objHelloWord哈哈哈至此delphi编写WebService及调用结束。注:1、第7步得到的WSDL地址很重要,如果点击WSDL出现不了XML文档,说明有问题,这个WSDL地址是不可用的,很可能的原因是网站没配置好。2、如果这个WSDL地址在公网上,其他任何人知道此地址和接口函数格式,都可以调用哦服务器端操作数据库
1如果服务端要操作数据库,还需要新增SoapServerDataModule,如图:
f2填写类名
OK后会自动新增一个单元,如图:
3往这个窗体上放入如下控件:
fAdoCo
ect:用来r