2017-09-06 68 views
0

如何讓gsoap爲ONVIF和ws-discovery一起生成適當的綁定?我沒有任何問題產生一個或另一個,但不是兩者兼而有之。Gsoap,ONVIF和發現

這將產生正確wsdiscovery綁定:

wsdl2h -g -o wsdiscovery.h -t typemap.dat https://raw.githubusercontent.com/crrlab/TND/master/data/onvif/ws-discovery.wsdl

soapwsddProxy.h和soapwsddProxy.cpp產生

這將生成ONVIF綁定,但wsdiscovery組件被省略。

wsdl2h -g -o wsdiscovery.h -t typemap.dat http://www.onvif.org/onvif/ver10/device/wsdl/devicemgmt.wsdlhttp://www.onvif.org/onvif/ver10/event/wsdl/event.wsdlhttps://www.onvif.org/ver20/ptz/wsdl/ptz.wsdlhttps://www.onvif.org/ver10/media/wsdl/media.wsdlhttps://raw.githubusercontent.com/crrlab/TND/master/data/onvif/ws-discovery.wsdl

soapwsddProxy.h和soapwsddProxy.cpp不會產生

soapcpp2 -C2Lxij -I $ gSOAP的/進口: $ GSOAP wsdiscovery.h

這與在ONVIF wsdl中定義的綁定接口有關,而不是在WS-Discovery wsdl中定義。當存在ONVIF綁定聲明時,wsdl2h將停止生成wsdiscovery綁定。

我試圖單獨生成它們,然後組合,但會導致各種編譯器錯誤。

回答