使用Visual C++开发SOAP客户端应用

2016-01-29 12:41 11 1 收藏

使用Visual C++开发SOAP客户端应用,使用Visual C++开发SOAP客户端应用

【 tulaoshi.com - C语言心得技巧 】

  在本篇文章中,我们将讨论如何使用Visual C++开发一个简单的SOAP客户端应用程序,我们还将介绍SOAP API的使用。SOAP是互联网上一种非常流行的交换信息用的协议,由于是为了与HTTP、SMTP和其他的类似协议协同工作的,因此它十分简单。用它描述的信息能够被轻易地通过互联网发送到另外的计算机上,而无需担心遭到防火墙等网络安全技术的拦截。

  在这里,我们假设读者已经对SOAP协议有了一定的理解,而且对C++比较精通。如果读者对SOAP还不熟悉,可以查看相关的资料。我们还假设读者熟悉COM的使用,特别是COM中的智能指针,因为在这篇文章中,我们将使用导入命令将COM接口转换为智能指针。另外,读者还需要安装了微软的SOAP工具包。

  SOAP编程基础

  我们将以介绍一个与基本的SOAP应用程序有关的类开始我们的SOAP编程之旅。然而,我们还必须首先导入必需的类型库,我们的应用程序才能使用SOAP类。

  导入类型库

  SOAP中使用的所有对象和接口都包含在mssoap1.dll中,这个文件包含在Microsoft SOAP Toolkit 2.0中。我们可以在C:Program FilesCommon FilesMSSoapBinariesMSSOAP1.dll中发现该文件。使用#import命令就可以将该文件导入到我们的源文件中。类库文件中的内容将被转换为描述了COM接口的COM智能指针。

  SOAP使用XML作为其数据格式,因此我们还需要微软的XML Parser来处理XML内容,它包含在msxml3.dll中。在导入mssoap1.dll文件之前,我们还需要导入该文件,如下所示:

#import "msxml3.dll"

using namespace MSXML2;

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com)

#import "C:Program FilesCommon FilesMSSoapBinariesMSSOAP1.dll"
exclude("IStream", "ISequentialStream", "_LARGE_INTEGER",
"_ULARGE_INTEGER", "tagSTATSTG", "_FILETIME")
using namespace MSSOAPLib;

  上面是开发一个SOAP应用程序所必需包含的所有类定义。开发一个SOAP客户端应用程序需要三个步骤:

   ·指定并连接一个互联网服务。

   ·准备并发送消息。

   ·读取来自服务器的响应。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com)

  下面是我们用来开发一个基本的SOAP客户端应用程序所需要用到的类:

    SoapConnector

  在客户机/服务器模式中任何客户端应用程序需要作的第一件事就是与服务器进行连接。SoapConnector就是被用来实现客户机端、服务器端应用程序连接器的协议,它还充当定义实现其他协议接口的抽象类,也就是说,SOAP不仅仅局限于充当一种特定的协议。我们会发现,它的一些实现还支持MSMQ、MQ Series、SMTP和TCP/IPTransports。为了简单起见,我在这里只讨论它作为HTTP Transport的用途,这是由微软SOAP Toolkit 2.0中的HttpConnector类实现的。

来源:http://www.tulaoshi.com/n/20160129/1487185.html

延伸阅读
交通银行手机客户端如何使用   交通银行手机银行客户端: 一、交通银行手机银行客户端开通问题 开通交通银行手机银行客户端需要什么条件? A、您的手机属于iPhone、Android、Windows Mobile、Symbian等操作系统或支持J2ME扩展功能。 B、您已经开通无线上网服务。 C、您需通过交行网点柜面、个人网银开通手机银行业...
标签: 电脑入门
点击登录进入,别忘了填写代理帐号密码,; 点击打开设置界面,在左边窗口选择适合你的代理线路,点; 点击进游戏,如果没反应,请把魔兽主程序(wow.exe)拖到GameCap中,双击运行它; 点击看是否加速成功。 如果加速成功,但是效果不理想,请选择另外的线路,然后ALT+F4关闭游戏重进; 如果加速失败,在中启用或禁用兼容模式,重进游戏再检测;...
标签: 电脑入门
1. 您需要连接天翼宽带(WiFi)网络时,请确认您使用了配置有符合802.11b/g标准功能模块或设备的计算机。 2. 该版本客户端仅支持Windows XP、Windows Vista、Windows 7 32位的中文简体操作系统。 3. 天翼宽带(3G)针对EV-DO RevA网络、天翼宽带(1X)针对CDMA1X网络。 4. 为确保无线接入业务正常使用,请在使用天翼宽带(WiFi)、天翼宽带(3G)、天...
前段时间发了个 ZUNE的不清晰的图,这次终于截到了清晰的大图,赶紧放上来给大家分享。
利用利用CPUID 汇编指令(机器码:0FH A2H, 如果你的编译器不支持CPUID 指令,只有emit 机器码了), 该指令可以被如下CPU识别: Intel 486 以上的CPU, Cyrix M1 以上的CPU, AMD Am486 以上的CPU (1) 取CPU OEM 字符串, 判断CPU 厂商 先让EAX=0, 再调用CPUID Inel的CPU将返回: EBX:756E6547H 'Genu&...

经验教程

761

收藏

44
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部