VS下gSOAP工具的使用

VS下gSOAP工具的使用
环境:VS2015 gSOAP2.8

1.下载安装:

官方网站 https://sourceforge.net/projects/gsoap2
百度网盘 https://pan.baidu.com/s/1KkHO3ELAi-2iyGbX8oB0qw 提取码:8lze

2.进入安装目录下的bin目录(D:\gSOAP\gsoap-2.8\gsoap\bin)

3.进入win32(win64同样) wsdl2h.exe soapcpp2.exe (可设置环境变量)

4.运行wsdl2h.exe 出现 Cannot open file "typemap.dat"

解决方案: 移至D:\gSOAP\gsoap-2.8\gsoap (即当前目录的上上级目录)复制typemap.dat文件到win32(win64同理)目录下即可

5.gSOAP在VS下的使用(参考:https://www.genivia.com/dev.html#client-cpp)

1.进入cmd
2.cd D:\gSOAP\gsoap-2.8\gsoap\bin\win32
3.wsdl2h -o calc.h http://www.genivia.com/calc.wsdl (生成calc.h文件)
4.soapcpp2 -CL -x -i calc.h (生成框架代码:C++代理类,不生成xml传输消息文件)
5.生成的文件:calc.nsmap soapH.h soapStub.h soapcalProxy.h soapcalProxy.cpp soapc.cpp
6.新建VS空项目添加calculator.cpp作为调用服务,将生成的文件包括(stdsoap2.h和stdsoap2.cpp在上上级目录)移动至VS工程文件下
7.在项目中添加头文件和源文件:calc.nsmap stdsoap2.h soapH.h soapStub.h soapcalProxy.h soapcalProxy.cpp soapc.cpp stdsoap2.cpp
8.示例代码:

#include 
#include "calc.nsmap"   
#include "soapcalcProxy.h"  //已经包含 "soapStub.h和soapH.h"
using namespace std;
int main() {
  calcProxy calc;
  double sum;
  if (calc.add(1.22, 3.44, sum) == SOAP_OK)
    cout << "Sum = " << sum << endl;
  else
    calc.soap_stream_fault(std::cerr);
  calc.destroy();
  getchar();
  return 0;
}

6.编译运行,显示结果4.66

你可能感兴趣的:(VS下gSOAP工具的使用)