2017-09-06 3 views
0

Wie bekomme ich Gsoap, um richtige Bindungen für ONVIF und Ws-Discovery zusammen zu erzeugen? Ich habe kein Problem, das eine oder das andere zu erzeugen, aber nicht beides kombiniert.Gsoap, ONVIF und Entdeckung

Dies richtige WS-Discovery-Bindungen erzeugen:

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

soapwsddProxy.h und soapwsddProxy.cpp

Dies wird die erzeugt werden, erzeugen ONVIF-Bindungen, aber die wsdiscovery-Komponente wird weggelassen.

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 und soapwsddProxy.cpp nicht

erzeugt

soapcpp2 -C2Lxij -I $ gSOAP/Import: $ GSOAP wsdiscovery.h

Dies hat etwas mit Bindungsschnittstellen zu tun, die in der ONVIF WSDL und nicht in der WS-Discovery WSDL definiert sind. Wenn die ONVIF-Bindungsdeklarationen vorhanden sind, beendet Wsdl2h das Generieren der Wsdiscovery-Bindungen.

Ich habe versucht, sie separat zu generieren und dann zu kombinieren, aber das führt zu allen Arten von Compiler-Fehlern.

Antwort