环境
vs2013(mfc) gsoap_2.8
在静态库中使用 MFC
使用多字节字符集
客户端代码生成
1.打开运行输入cmd 进入命令界面
2. cd 到gsoap-2.8\gsoap\bin\win32 目录下; 在此目录下有 soapcpp2.exe 和 wsdl2h.exe两个文件
3. 在gsoap目录下的 typemap.dat文件里的最后一行加上 xsd__string = | std::wstring | wchar_t*(此举可解决gsoap中文乱码问题)
4. 将修改后的 typemap.dat文件复制到win32目录下
5.运行 wsdl2h -s -o calc.h http://www.*******.wsdl
6.此时会生成头文件 calc.h
7.再运行soapcpp2 -i -x -C -L calc.h
8.完成客户端代码生成
MFC调用
1.将生成好的文件复制到mfc工程文件下;
2.将gsoap目录下的stdsoap2.cpp文件和stdsoap2.h文件也一同复制到mfc工程文件下;
3.将所有复制过来的cpp文件的预编译头设置为不使用预编译头(设置方法右键cpp文件属性预编译头)
4.在实现的文件中引用下面这三个文件:
5.mfc字符集设置为:使用多字节字符集
6.release 连接器输入设置:(设置附加依赖项及忽略特定默认库)(若无文件冲突可不设置此项)
7.Debug链接器输入设置(设置附加依赖项及忽略特定默认库)(若无文件冲突可不设置此项)
8.代码调用