记录下gsoap生成文件命令,以及遇到的编译LNK2001/2019等错误

0 篇文章 0 订阅

本人第一次使用gsoap,需要做webservice客户端向服务端发起一些请求命令;
按照百家所言所述生成命令:
1.cmd进入\gsoap\bin\win32:wsdl2h -s -o CaptureService.h -t typemap.dat SCService.wsdl
-s:不使用stl代码
-o:指定输出文件,即这里的xxx.h
-t:指定typemap.dat文件,修改此文件确保中文转换好使(xsd__string = | std::wstring | wchar_t*;)
-I(大写i):指定文件路径
wsdl文件这里也可以使用http://xxxxxasmx?wsdl此类
此步之后生成了一个CaptureService.h头文件
2.将gsoap\import目录下的文件拷贝一份放在同一个目录,soap12.h、stl.h、stldeque.h、stllist.h、stlset.h、stlvector.h六个文件;当然也可以一会用命令-I指定路径;
3.敲命令:soapcpp2 CaptureService.h -L -i
使用soapcpp2.exe生成n个文件
-L:不生成soapClientLib.c和soapServerlib.c文件
-i:生成c++包装文件,客户端xxxproxy.cpp(.h),服务端xxxservice.cpp(.h)
-C/-S:仅生成客户端代码或服务端代码,这里我先不加指令全部生成
-x:不生成示例xml文件,我生成看了下,跟soapui界面的XML文件一致
最终生成了n多文件(还有2个服务端文件没放进工程),如下:

4. 把这几个文件添加至现有工程中,并在使用的cpp文件开头加上:
在这里插入图片描述
正如注释所言,我查看了第一个头文件确实包含在客户端头文件中了,但是网友很多都有放,目前没出现问题

5.至此开始编译,妈耶。n多个LNK2019错误,(LNK2001错误是在修改文件路径后,但include没包含几个头文件就出现了。。。)
在这里插入图片描述
一番百度后,有几种可能:缺库文件lib,文件链接失败等等
开始修改:(vs2015)工程右键->属性->c/c+±>常规->附加包含目录,把这个几个文件放在统一路径下,添加上,然后ok了。。。。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值