iWSDDeviceHost 介面 (wsdhost.h)
表示符合 DPWS 標準的裝置。 裝置主機會使用 WS-Discovery 通訊協定,在網路上宣佈其存在狀態。 裝置主機也會自動回應探索查詢和元數據要求。
呼叫端可以向裝置主機註冊用戶實作的服務。 這些服務將會在裝置元數據中公開,而且服務將可透過網路使用。 系結這些服務的訊息會自動分派至服務物件。
呼叫 WSDCreateDeviceHost 或 WSDCreateDeviceHostAdvanced 來建立公開此介面的物件。
繼承
IWSDDeviceHost 介面繼承自 IUnknown 介面。 IWSDDeviceHost 也有下列類型的成員:
方法
IWSDDeviceHost 介面具有這些方法。
IWSDDeviceHost::AddDynamicService 註冊傳入要求的服務物件,但不會將服務新增至裝置主機元數據。 這用於暫時性 (動態) 服務。 |
IWSDDeviceHost::Init 初始化 IWSDDeviceHost 對象的實例。 |
IWSDDeviceHost::RegisterPortType 註冊傳入訊息的埠類型。 |
IWSDDeviceHost::RegisterService 註冊傳入要求的服務物件,並將服務新增至裝置主機元數據。 |
IWSDDeviceHost::RemoveDynamicService 取消註冊使用 AddDynamicService 註冊的服務物件。 |
IWSDDeviceHost::RetireService 取消註冊使用 RegisterService 註冊的服務物件,並從裝置主機元數據移除服務。 |
IWSDDeviceHost::SetMetadata 設定裝置的元數據,不包括使用者定義的服務元數據。 |
IWSDDeviceHost::SetServiceDiscoverable 控制服務是否使用 WS-Discovery 公告。 |
IWSDDeviceHost::SignalEvent 通知所有已訂閱的用戶端發生事件。 |
IWSDDeviceHost::Start 啟動裝置主機,並使用 WS-Discovery Hello 訊息發佈裝置主機。 |
IWSDDeviceHost::Stop 傳送 WS-Discovery Bye 訊息並停止主機。 |
IWSDDeviceHost::Terminate 終止主機並釋放任何連結的服務。 |
備註
擷取此介面之後,應用程式會接著:
- 呼叫 RegisterPortType 方法來註冊所有必要的埠類型。
- 呼叫 SetMetadata 來描述裝置,並選擇性地呼叫 RegisterService 一或多次來註冊服務主機元數據中所述的服務。
- 呼叫 Start 方法來啟動裝置主機,並使用 WS-Discovery 發佈裝置。啟動裝置主機之後,您可以選擇性地:
- 例如,針對服務主機元數據中未描述的服務呼叫 AddDynamicService (,例如臨機操作列印作業) 。
- 呼叫 RetireService 終止動作,並中斷 RegisterService 方法所啟動的服務連線。
- 呼叫 SignalEvent 方法,指出應該針對與特定事件相關的訂閱傳送通知。
- 呼叫 Stop 方法以終止主機執行,並終止裝置的發行集。
IWSDDeviceHost 物件可以在呼叫主機收到導向該服務的要求訊息時,使用通知回呼) ,為 (服務提供隨選服務的物件。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | wsdhost.h (包含 Wsdapi.h) |