当前位置: 首页 > news >正文

营销加盟网站建设美食网站的建设背景

营销加盟网站建设,美食网站的建设背景,深圳有什么好玩的,郴州网站设计较好的公司新建一个工程。选择如图。继续输入服务名然后就生成对应的单元。增加linux 平台。完善对应的单元代码{ Invokable implementation File for Txaliontest which implements Ixaliontest }unit xaliontestImpl;interfaceuses Soap.InvokeRegistry, System.Types, Soap.XSBuiltIns…

新建一个工程。选择如图。

继续输入服务名

然后就生成对应的单元。

增加linux 平台。

完善对应的单元代码

{ Invokable implementation File for Txaliontest which implements Ixaliontest }unit xaliontestImpl;interfaceuses Soap.InvokeRegistry, System.Types, Soap.XSBuiltIns, xaliontestIntf;type{ Txaliontest }Txaliontest = class(TInvokableClass, Ixaliontest)publicfunction echoname(const Value:string):string; stdcall;function sumall(const Value:integer):integer; stdcall;end;implementation{ Txaliontest }function Txaliontest.echoname(const Value: string): string;
beginresult:='你好'+value;
end;function Txaliontest.sumall(const Value: integer): integer;
vari:integer;isumall:integer;
beginisumall:=;for i :=  to value doisumall:=isumall+i;result:=isumall;
end;initialization
{ Invokable classes must be registered }InvRegistry.RegisterInvokableClass(Txaliontest);
end.
{ Invokable interface Ixaliontest }unit xaliontestIntf;interfaceuses Soap.InvokeRegistry, System.Types, Soap.XSBuiltIns;type{ Invokable interfaces must derive from IInvokable }Ixaliontest = interface(IInvokable)['{20590E4A-BF8C-41AE-A630-94D2DD38EEE1}']{ Methods of Invokable interface must not use the default }{ calling convention; stdcall is recommended }function echoname(const Value:string):string; stdcall;function sumall(const Value:integer):integer; stdcall;end;implementationinitialization{ Invokable interfaces must be registered }InvRegistry.RegisterInterface(TypeInfo(Ixaliontest));end.

编译本工程。出错了?

不要害怕,这是因为linux 上apache的引用没有加入。我们确认apache 已经在linux上安装成功。

那么我们在IDE 里面处理一下。

记住设以上的地方为True, 允许未定义的引用。

现在重新编译

OK 了

现在的任务就是在发布这个apache 模块。

这一块的内容请参照前面的文章。

配置文件如图:

启动apache.

在浏览器里面输入对应的地址,就可以显示webservice 的接口信息了。

好了,服务端搞定了。我们做一个客户端来调用一下这个服务。

直接建一个vcl application .

然后选择WDSL 导入器。

输入对应的地址。

系统会生成对应的接口文件

// ************************************************************************ //
// The types declared in this file were generated from data read from the
// WSDL File described below:
// WSDL     : http://192.168.1.66/xalionws/wsdl/Ixaliontest
// Encoding : utf-8
// Version  : 1.0
// (2017-4-8 21:33:51 - - $Rev: 90173 $)
// ************************************************************************ //unit Ixaliontest1;interfaceuses Soap.InvokeRegistry, Soap.SOAPHTTPClient, System.Types, Soap.XSBuiltIns;type// ************************************************************************ //// The following types, referred to in the WSDL document are not being represented// in this file. They are either aliases[@] of other types represented or were referred// to but never[!] declared in the document. The types from the latter category// typically map to predefined/known XML or Embarcadero types; however, they could also// indicate incorrect WSDL documents that failed to declare or import a schema type.// ************************************************************************ //// !:int             - "http://www.w3.org/2001/XMLSchema"[]// !:string          - "http://www.w3.org/2001/XMLSchema"[]// ************************************************************************ //// Namespace : urn:xaliontestIntf-Ixaliontest// soapAction: urn:xaliontestIntf-Ixaliontest#%operationName%// transport : http://schemas.xmlsoap.org/soap/http// style     : rpc// use       : encoded// binding   : Ixaliontestbinding// service   : Ixaliontestservice// port      : IxaliontestPort// URL       : http://192.168.1.66/xalionws/soap/Ixaliontest// ************************************************************************ //Ixaliontest = interface(IInvokable)['{A3FB1A48-1AE7-B449-16DC-42CCE1A48832}']function  echoname(const Value: string): string; stdcall;function  sumall(const Value: Integer): Integer; stdcall;end;function GetIxaliontest(UseWSDL: Boolean=System.False; Addr: string=''; HTTPRIO: THTTPRIO = nil): Ixaliontest;implementationuses System.SysUtils;function GetIxaliontest(UseWSDL: Boolean; Addr: string; HTTPRIO: THTTPRIO): Ixaliontest;
constdefWSDL = 'http://192.168.1.66/xalionws/wsdl/Ixaliontest';defURL  = 'http://192.168.1.66/xalionws/soap/Ixaliontest';defSvc  = 'Ixaliontestservice';defPrt  = 'IxaliontestPort';
varRIO: THTTPRIO;
beginResult := nil;if (Addr = '') thenbeginif UseWSDL thenAddr := defWSDLelseAddr := defURL;end;if HTTPRIO = nil thenRIO := THTTPRIO.Create(nil)elseRIO := HTTPRIO;tryResult := (RIO as Ixaliontest);if UseWSDL thenbeginRIO.WSDLLocation := Addr;RIO.Service := defSvc;RIO.Port := defPrt;end elseRIO.URL := Addr;finallyif (Result = nil) and (HTTPRIO = nil) thenRIO.Free;end;
end;initialization{ Ixaliontest }InvRegistry.RegisterInterface(TypeInfo(Ixaliontest), 'urn:xaliontestIntf-Ixaliontest', 'utf-8');InvRegistry.RegisterDefaultSOAPAction(TypeInfo(Ixaliontest), 'urn:xaliontestIntf-Ixaliontest#%operationName%');end.

在主窗体放两个按钮。

implementation{$R *.dfm}uses Ixaliontest1;procedure TForm2.Button1Click(Sender: TObject);
beginshowmessage(  GetIxaliontest.echoname('xalion'));
end;procedure TForm2.Button2Click(Sender: TObject);
beginshowmessage(  GetIxaliontest.sumall().tostring);
end;

http://www.yayakq.cn/news/17475/

相关文章:

  • 华为云速建站教程精仿36氪(36kr)wordpress主题
  • 织梦网站后台如何做百度优化怎么对页面颜色进行设计
  • 如何做闲置物品自己的网站凌晨网站建设公司
  • 省建设厅网站安徽合肥工程建设交易中心网站
  • 受欢迎的江苏网站建设河南宏业建设管理有限公司网站
  • 广东网站建设哪家专业做茶网站
  • 个人网站推广平台大全百度手机助手下载安装最新版
  • 长春网站建设方案优化公司注册资金可以乱写吗
  • 企业网站建设管理视频wordpress在vps上安装
  • 免费外贸网站源码永州企业网站开发
  • 做邀请函的网站做企业网站设计方案
  • 网站建设项目模板上海关键词优化的技巧
  • 南阳网站建设培训班与做网站有关的参考文献
  • 网站html下载器长沙招聘网最新招聘信息
  • 苏州模板做网站工信部网站备案举报
  • 库尔勒北京网站建设中国建设集团官网
  • 一个空间怎么放两个网站吗wordpress 自己写的网页
  • 高端网站开发公司高端模板网站建设公司
  • 营销网站建设都是专业技术人员吗做复印机的模板网站
  • 如何创建网站内容企业做网站需要哪些材料
  • 有什么做ppt的网站吗360建筑网如何删除自己的信息
  • 济南市住房和城乡建设局网站深圳英文网站推广
  • 聊天网站开发网站建设成都
  • 做平面哪个网站的素材最好设置图片
  • 微信互动营销网站建设做网站什么字体
  • 广告公司的网站建设西安企业自助建站
  • 做网站需要套模板上海网站怎么备案表
  • 做淘宝详情页的素材网站郑州厉害的seo优化顾问
  • 免费网站建站教程西安网络推广运营公司
  • 怎么建立一个网站开展业务大连 商城网站制作公司