Übersicht über die WSDAPI-Schnittstellen

Die Web Services on Devices-API (WSDAPI) wird verwendet, um Client Anwendungen zu entwickeln, die Geräte suchen und darauf zugreifen, sowie um Geräte Hosts und zugehörige Dienste zu entwickeln, die unter Windows Vista und Windows Server 2008 ausgeführt werden. Die funktionsermittlungs -API und das wsdcodegen -Tool sind ergänzende Tools, die für die Client-, Geräte Host-und Dienst Entwicklung verwendet werden können. Die WSDAPI-Schnittstellen können direkt verwendet werden, um erweiterte Funktionen verfügbar zu machen.

Wichtige WSDAPI-Schnittstellen

Die vier wichtigsten WSDAPI-Schnittstellen sind iwsdiscoveryprovider, iwsdiscoverypublisher, iwsddeviceproxyund iwsddevicehost. Eine Liste aller WSDAPI-Schnittstellen finden Sie unter Webdienste auf Geräteschnittstellen.

Iwsdiscoveryprovider

Iwsdiscoveryprovider wird zur Implementierung WS-Discovery Funktionen auf Clients verwendet.

Iwsdiscoveryprovider gibt WS-Discovery Test- und Auflösungs Meldungen aus und empfängt die Nachrichten Hello, Bye, Probe Matchesund resolvematches . Verwenden Sie die Informationen, die über die iwsdiscoveryprovider -Schnittstelle abgerufen werden, wenn Sie eine iwsddeviceproxy -Schnittstelle erstellen, mit der ein bestimmtes DPWS-Gerät beschrieben und gesteuert

Eine iwsdiscoveryprovider -Schnittstelle ist nicht erforderlich, wenn Sie eine bestimmte DPWS-Geräteadresse vor dem Erstellen eines Geräte Proxys auflösen. Bei Bedarf wird die Geräteadresse von wsdkreatedeviceproxy automatisch aufgelöst.

Die funktionsermittlungs -API kann für die generische Geräte-und Dienst Ermittlung verwendet werden, da die API DPWS-Geräte ermitteln kann, und auch Geräte, die andere Protokolle verwenden. Verwenden Sie die Funktions Ermittlung, wenn Sie eine generische Ermittlungs Anwendung schreiben.

Iwsdiscoverypublisher

Iwsdiscoverypublisher wird verwendet, um WS-Discovery Funktionen für Ziel Dienste wie z. b. Geräte zu implementieren.

Iwsdiscoverypublisher ermöglicht es einer Anwendung, ihre Anwesenheit mithilfe WS-Discovery Hello-und bye-Nachrichten zu veröffentlichen. Diese Schnittstelle ermöglicht einer Anwendung das Empfangen von Test-und Auflösungsanforderungen sowie das Erstellen und Senden von Probe Matches-und resolvematches-Antworten.

Eine iwsdiscoverypublisher -Schnittstelle ist nicht erforderlich, wenn das vorhanden sein eines iwsddevicehost -Objekts einfach veröffentlicht wird. Iwsddevicehost verwaltet seine eigene WS-Discovery Anwesenheit.

Iwsddeviceproxy

Mithilfe von iwsddeviceproxy werden Client seitige WS-Discovery-, WS-MetadataExchange-und Steuerungsfunktionen implementiert. Diese Funktion umfasst optionale Funktionen für sicheres Channel, WS-Ereignis und Anlage.

Die iwsddeviceproxy -Schnittstelle verfügt über die folgenden drei Verwendungsmöglichkeiten.

  • Löst bei Bedarf logische Geräte Adressen auf.
  • Initiiert Metadatenanforderungen an Geräte, um die Typen und Adressen der Dienste aufzuzählen.
  • Stellt eine Quelle für iwsdserviceproxy -Objekte bereit, die verwendet werden können, um Steuerungs Meldungen an bestimmte Dienste auf einem Gerät auszugeben.

Das iwsddeviceproxy -Objekt wird in der Regel erstellt und vollständig in Code verwendet, der von wsdcodegengeneriert wurde.

Iwsddevicehost

Mithilfe von iwsddevicehost werden Geräte seitige WS-Discovery-, WS-MetadataExchange-und diensthostingfunktionen implementiert. Gehostete Dienste reagieren möglicherweise auf Steuerungs Meldungen und unterstützen möglicherweise die Funktionen "sicherer Kanal", "WS-Ereignis" und "Anlage".

Die iwsddevicehost -Schnittstelle verfügt über die folgenden Verwendungsmöglichkeiten.

  • Hostet Dienst Objekte.
  • Gibt an, dass ein Geräte Host im Netzwerk mithilfe von WS-Discovery vorhanden ist.
  • Reagiert auf WS-MetadataExchange Anforderungen und beschreibt die Typen und Speicherorte gehosteter Dienste.
  • Sendet Netzwerk Anforderungen an Dienst Objekte.

Die Funktionen WS-Discovery, WS-MetadataExchange und WS-Eventing-Abonnement Verwaltung werden vollständig innerhalb des Geräte Host Objekts behandelt. Bevor ein Dienst innerhalb eines Geräte Hosts gehostet werden kann, müssen die folgenden Anforderungen erfüllt sein.

  • Der Host muss durch Aufrufen von wsdcreatedevicehosterstellt werden.
  • Die dem Dienst zugeordneten Metadaten müssen registriert werden.
  • Der Dienst selbst muss registriert werden.
  • Der Geräte Host muss gestartet werden.

Das iwsddevicehost -Objekt wird in der Regel im von wsdcodegengenerierten Code erstellt und verwendet.