首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用C++、GSOAP和Onvif制作客户端应用程序

使用C++、GSOAP和Onvif制作客户端应用程序
EN

Stack Overflow用户
提问于 2013-07-08 20:02:27
回答 1查看 5.8K关注 0票数 4

我正在使用和GSOAP2.8.15创建一个C++ Onvif客户端。

我运行了以下命令来创建源代码:

代码语言:javascript
运行
复制
> wsdl2h -P -x -o onvif.h http://www.onvif.org/onvif/ver10/device/wsdl/devicemgmt.wsdl

> soapcpp2 -i -C -IC:\gsoap-2.8.15\gsoap;C:\gsoap-2.8.15\gsoap\import onvif.h

然后我将这些文件放在我的MSVC解决方案中:

代码语言:javascript
运行
复制
duration.h/.cpp
soapH.h/soapC.cpp
stdsoap2.h/.cpp

我将这个文件添加到目录中,但没有添加到解决方案中:

代码语言:javascript
运行
复制
soapStub.h

我将其作为#define添加到编译中:

代码语言:javascript
运行
复制
WITH_NONAMESPACES

我将这个包含添加到我的程序的主文件中:

代码语言:javascript
运行
复制
#include "soapDeviceBindingProxy.h"

这给了我一个DeviceBindingProxy对象,但我不知道该如何处理它。我想连接到一个已知ip地址的Onvif摄像头,并请求有关该设备的信息。

GSOAP示例不特定于Onvif,Onvif伪代码示例也不特定于GSOAP。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2013-07-17 13:08:50

只需打开DeviceBindingProxy对象的定义(甚至更好:在gSoap生成的源文件上运行doxygen,并享受舒适的HTML文档)。

它应该包含服务提供的每个操作的单独方法,其名称与服务定义完全相同。

每个方法都应该包含两个参数: request & response (它们的类型是指向gSoap生成的结构的指针:有关详细信息,请参阅它们的定义/文档)。

您所需要做的就是创建request & response实例,填充请求,将指向该方法的指针传递给该方法,并从(已经解析的)响应中获取数据。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17535015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档