gSoap代码生成
来源:互联网 发布:网上开票软件 编辑:程序博客网 时间:2024/05/17 06:51
gSoap代码生成工具
gSoap代码生成工具,主要是针对onvif协议进行的一种协议的透明性封装,先介绍一下gSoap:
gSOAP编译工具提供了一个SOAP/XML 关于C/C++ 语言的实现,从而让C/C++语言开发web服务或客户端程序的工作变得轻松了很多。绝大多数的C++web服务工具包提供一组API函数类库来处理特定的SOAP数据结构,这样就使得用户必须改变程序结构来适应相关的类库。与之相反,gSOAP利用编译器技术提供了一组透明化的SOAP API,并将与开发无关的SOAP实现细节相关的内容对用户隐藏起来。onvif协议是网络高清视频行业的一个不是标准的标准,主要是因为他的方便性和可扩展性得到各安防行业开发者的喜爱,具体协议内容可去onvif官方网站下载白皮书进行了解。
下面介绍gSoap工具生成代码的步骤:
1.首先下载gSoap工具,本文使用的是2.8.11版本gsoap工具,生成的是cpp文件代理类型。当然也可以加入相应的选项生成c代码(下面会介绍到)http://sourceforge.net/projects/gsoap2/下载网址。
2.下载wsdl文件,包括你再开发过程中使用到onvif协议的所有有关的wsdl文件,比如智能分析,鉴权,ptz等等wsdl文件,具体文件下载我也没找到过,不过在生成的过程中,可以使用csdn上面的旧的版本,在生成过程中会自动连接网络使用最新的wsdl版本进行生成。
3.编辑批处理文件gen-cpp.bat,文件内容如下:
soapcpp2.exe -2 -j -x -L onvif.h -IG:\gSoap\gsoap-2.8\gsoap\import;G:\gSoap\gsoap-2.8\gsoap\
pause
gen-h.bat文件内容如下:
wsdl2h.exe -x -t typemap.dat -o onvif.h http://www.genivia.com/*.wsdl rem analytics.wsdl analyticsdevice.wsdl deviceio.wsdl devicemgmt.wsdl rem display.wsdl event.wsdl imaging.wsdl media.wsdl ptz.wsdl rem receiver.wsdl recording.wsdl remotediscovery.wsdl replay.wsdl
其中 -2 表示使用的是gsoap1.2版本-对应为2.8.XXX,关于版本的问题,可以找到gsoap里面的doc目录--soapdoc2.pdf进行了解;soapcpp2.exe,wsdl2h.exe在gsoap目录下面的bin目录下面,如果没有则要自己编译产生
-S 仅生成客户端代码
-c 产生纯C代码,否则是C++代码,默认是cpp代码
-L 不要产生soapClientLib.c和soapServerLib.c文件
-I 指定import路径
-x 不要产生XML示例文件
-j 不要产生soap_Heade..等详细定义
-i 生成C++包装,客户端为xxxxProxy.h(.cpp),服务器端为xxxxService.h(.cpp)
4.使用gen-h.bat生成onvif.h文件(当然你可以设置这个文件的名字)通过-o选项,然后使用gen-cpp.bat生成所有的cpp文件,在gen-cpp.bat文件内容中,后面的**.wsdl表示你要使用到得所有的wsdl文件,如果你想去掉使用不到的文件,直接去掉即可。
5.整理你生成的代码,然后将服务器和客户端的代码分离出来,(你也可以选择只生成客户端的代码通过-s选项。然后测试你生成的代码!
后面将贴出利用生成的代码完成设备的发现和能力集获取的使用过程。
0 0
- gSoap代码生成
- gsoap应用---利用gsoap工具生成代码
- gsoap应用---利用gsoap工具生成代码
- gsoap应用---利用gsoap工具生成代码
- gsoap代码生成和代码使用
- 使用gsoap生成onvif代码框架
- gsoap生成完整的onvif骨架代码
- gsoap生成服务端客户端代码文件说明
- onvif协议开发:gsoap代码框架生成命令
- Linux下gSOAP生成webservice客户端代码 的使用心得
- gsoap入门:C/C++代码生成及编译
- linux系统下gsoap生成onvif框架代码
- gSOAP+onvif初探(一):生成onvif代码框架
- gSoap生成WSDL文件
- gsoap生成c++框架
- gsoap 生成的wsdllocakt
- gsoap ssl代码分析
- gsoap ssl代码分析 .
- 从大小为n的数组中随机选出m个整数,要求被选中的概率相同
- ASP.NET之基本对象
- 超简洁Cygwin安装配置
- JavaScript学习8:DOM进阶
- 第十一周 【项目2 - 职员有薪水了】深复制
- gSoap代码生成
- 开始写博客
- this is for test
- 文章标题
- Zend Optimizer的时候 装不上会出现这段提示 Your web server configurrtion seems to be corrupted and does not inclu
- Windows server 2008 R2实现多用户远程连接
- hdu 1163 Eddy's digital Roots
- Internal Sorting: Two-way insertion: Sorting by Insertion
- char a[]与char *的一些补充实验