我的首要目标是创建一个小型 ONVIF 客户端,用于以 C 或 C++ 获取相机信息。
gSOAP 似乎是一个不错的候选者,我想要实现的第一件事是制作一个小型控制台应用程序,该应用程序将使用 WS-Discovery 列出我在网络上拥有的一堆摄像机的地址,这是我以前用一点 .网络应用程序。
问题是我在第一个障碍上磕磕绊绊,我对我应该做什么感到有点困惑。我开始执行以下操作:
wsdl2h.exe -o WSDiscovery.h WS-Discovery.wsdl http://www.w3.org/2006/03/addressing/ws-addr.xsd
soapcpp2.exe -i -C -Iimport WSDiscovery.h -d output
,然后我从结果中做了一个项目soapC.cpp
stdsoap2.cpp
soapH.h
soapStub.h
。threads.h
wsaapi.h
wsddapi.h
threads.c
wsaapi.c
wsddapi.c
从 gsoap添加
这不会编译但是给出:
wsaapi.h(134): error C2061: syntax error : identifier 'wsa__FaultSubcodeValues'
我想我在这里搞错了,我对 gSOAP 上下文中的“插件”到底是什么感到困惑(我对这样的外部库的经验非常有限,而且我没有真正的 CS 方面的正式培训)。我只是应该对 wsdd 文件做我现在正在做的事情,还是应该将它们用作 soapcpp2.exe 进程的一部分?如果我只想要 WS-Discovery,我真的应该使用 wsdl2h.exe 吗?
我真的无法理解文档,也不明白我应该如何让它工作。一些帮助将不胜感激,这样我就可以着手解决实际困难的部分了!