带gsoap-2.8源码,基于服务器客户端的实例,带自动生成服务客户端代码的批处理程序,及如何使用。带自己学习参考的教程;
0.解压附件,soapInterface.bat所在路径不得含中文 空格
1.新建头文件 取soapInterface.bat文件的同名:soapInterface.h
文件内编写接口,具体说明看附件参考的教程
//gsoap ns service name: gservice
//gsoap ns service style: rpc
int ns__add(int num1, int num2, int* result );
int ns__sub(int num1, int num2, int* result );
int ns__mult( int num1, int num2, int *result);
int ns__divid( int num1, int num2, int *result);
2.从附件内gsoap-2.8包中搜索复制stdsoap2.h,stdsoap2.cpp,soapcpp2.exe,
存放于soapInterface.bat同级目录
3.双击soapInterface.bat运行。生成gClientSoap,gServerSoap两个文件夹,分别复制到服务器工程与客户端工程中使用
4.gClientSoap,gServerSoap两个文件夹内用到的文件功能说明,更多参考附件教程
1)soapC.cpp , soapH.h//soap的序列和反序列代码,它已经包含了soapStub.h
2)soapServer.c ppsoapServerLib.cpp //服务器端代码(纯C代码是soapServer.c soapServerLib.c ),soapServerLib.cpp文件则只是简单地包含soapServer.cpp和soapC.cpp
3)soapClient.cpp soapClientLib.cpp//客户端代码(纯C代码是soapClient.csoapClientLib.c ),soapClientLib.cpp文件则只是简单地包含soapClient.cpp和soapC.cpp
4) soapStub.h // soap的存根文件,定义了我们编写的头文件里对应的远程调用模型
5) add.nsmap //XML服务命名空间
6)服务器端要载入的文件有:soapServer.cpp,soapC.cpp,stdsoap2.cpp;
要包含的文件有:gservice.nsmap,soapH.h;
客户端要输入的文件有: soapClient.cpp,soapC.cpp,stdsoap2.cpp;
要包含的文件有:gservice.nsmap,soapH.h
1