Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Usługi sieci Web w interfejsie API urządzeń (WSDAPI) służą do tworzenia aplikacji klienckich, które znajdują i uzyskują dostęp do urządzeń, oraz do tworzenia hostów urządzeń i skojarzonych usług uruchomionych w systemach Windows Vista i Windows Server 2008. Interfejs API odnajdywania funkcji oraz narzędzie WsdCodeGen to narzędzia uzupełniające, które mogą być używane do tworzenia klientów, hostów urządzeń i usług. Interfejsy WSDAPI mogą służyć bezpośrednio do uwidaczniania zaawansowanych funkcji.
Główne interfejsy WSDAPI
Cztery główne interfejsy WSDAPI to IWSDiscoveryProvider, IWSDiscoveryPublisher, IWSDDeviceProxyi IWSDDeviceHost. Aby uzyskać listę wszystkich interfejsów WSDAPI, zobacz Web Services on Devices Interfaces.
IWSDiscoveryProvider
IWSDiscoveryProvider służy do implementowania funkcji WS-Discovery na klientach.
IWSDiscoveryProvider wysyła komunikaty WS-Discovery Probe i Resolve oraz odbiera komunikaty Hello, Bye, ProbeMatchesi ResolveMatches. Użyj informacji pobranych za pośrednictwem interfejsu IWSDiscoveryProvider podczas tworzenia interfejsu IWSDDeviceProxy używanego do opisywania i kontrolowania określonego urządzenia DPWS.
Interfejs IWSDiscoveryProvider nie jest konieczny podczas zwykłego rozwiązywania określonego adresu urządzenia DPWS przed utworzeniem proxy urządzenia. WSDCreateDeviceProxy automatycznie rozpozna adres urządzenia, jeśli jest to wymagane.
Interfejs API odnajdywania funkcji może służyć do ogólnego odnajdywania urządzeń i usług, ponieważ interfejs API może odnajdywać urządzenia DPWS, a także urządzenia korzystające z innych protokołów. Rozważ użycie odnajdywania funkcji podczas pisania aplikacji odnajdywania ogólnego.
IWSDiscoveryPublisher
IWSDiscoveryPublisher jest używany do implementacji funkcjonalności WS-Discovery w usługach docelowych, takich jak urządzenia.
IWSDiscoveryPublisher umożliwia aplikacji publikowanie jej obecności przy użyciu komunikatów WS-Discovery Hello i Bye. Ten interfejs umożliwia aplikacji odbieranie żądań sondowania i rozwiązywania oraz konstruowanie i wysyłanie odpowiedzi typu ProbeMatches i ResolveMatches.
Interfejs IWSDiscoveryPublisher nie jest konieczny, gdy wystarczy opublikować istnienie obiektu IWSDDeviceHost. IWSDDeviceHost zarządza własną obecnością WS-Discovery.
IWSDDeviceProxy
IWSDDeviceProxy służy do implementowania funkcji WS-Discovery po stronie klienta, WS-MetadataExchange i sterowania. Ta funkcja obejmuje opcjonalne funkcjonalności, takie jak bezpieczny kanał, WS-Eventing i obsługę załączników.
Interfejs IWSDDeviceProxy ma następujące trzy zastosowania.
- Rozwiązuje adresy urządzeń logicznych, jeśli to konieczne.
- Inicjuje żądania metadanych do urządzeń w celu wyliczenia typów i adresów usług.
- Udostępnia źródło dla obiektów IWSDServiceProxy, które mogą służyć do wydawania komunikatów kontrolnych do określonych usług na urządzeniu.
Obiekt IWSDDeviceProxy jest zwykle tworzony i używany całkowicie wewnątrz kodu generowanego przez WsdCodeGen.
IWSDDeviceHost
IWSDDeviceHost służy do implementowania funkcji z zakresu WS-Discovery, WS-MetadataExchange oraz hostingu usług po stronie urządzenia. Hostowane usługi mogą reagować na komunikaty sterujące i mogą obsługiwać bezpieczny kanał, usługę WS-Eventing i możliwości załączników.
Interfejs IWSDDeviceHost ma następujące zastosowania.
- Hostuje obiekty usługi.
- Ogłasza obecność hosta urządzenia w sieci przy użyciu funkcji WS-Discovery.
- Odpowiada na żądania WS-MetadataExchange i opisuje typy oraz lokalizacje usług świadczonych.
- Wysyła żądania sieciowe do obiektów usługi.
Funkcje zarządzania subskrypcjami WS-Discovery, WS-MetadataExchange i WS-Eventing są obsługiwane w całości w obrębie obiektu hosta urządzenia. Aby usługa była hostowana na hoście urządzenia, należy spełnić następujące wymagania.
- Host musi zostać utworzony przez wywołanie WSDCreateDeviceHost.
- Metadane skojarzone z usługą muszą być zarejestrowane.
- Sama usługa musi być zarejestrowana.
- Należy uruchomić hosta urządzenia.
Obiekt IWSDDeviceHost jest zwykle tworzony i używany wewnątrz kodu generowanego przez WsdCodeGen.