2017-09-06 13 views
0

どのようにして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

これは、WS-Discovery wsdlではなくONVIF wsdlで定義されているバインディングインターフェイスと関係がある。 ONVIFバインディング宣言が存在する場合、wsdl2hはwsdiscoveryバインディングの生成を停止します。

私はそれらを別々に生成してから結合しようとしましたが、それはあらゆる種類のコンパイラエラーにつながります。

答えて