共用方式為


執行鄰近偵測

[與此頁面相關聯的功能 Windows Media Format 11 SDK是舊版功能。 來源讀取器和接收寫入器已取代它。 來源讀取器和接收寫入器已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用來源讀取器和接收寫入器,而不是Windows 媒體格式 11 SDK。 Microsoft 建議使用舊版 API 的現有程式碼盡可能重寫為使用新的 API。

您必須先執行稱為鄰近偵測的程式, (也稱為驗證) ,才能將加密資料串流至 Windows Media DRM 10 for Network Devices 通訊協定中的已註冊裝置。 此程式牽涉到將訊息傳送至裝置和接收回應。 接收回應所需的時間是用來判斷裝置是否夠接近網路上的電腦,以接收安全的資料。 確認裝置實際上接近網路上的用戶端電腦,有助於防止詐騙和其他未經授權的存取。

當鄰近偵測成功完成時,裝置即為有效。 您可以呼叫 IWMRegisteredDevice::IsValid 方法來檢查裝置是否有效。 裝置必須每隔 48 小時驗證一次。 在程式執行之前驗證超過 48 小時的裝置,必須再次執行鄰近偵測程式來重新驗證。

若要執行鄰近偵測,您必須建立與裝置的通訊,然後呼叫 IWMProximityDetection::StartDetection 方法。 偵測程式是由 Windows 媒體格式 SDK 的內部 DRM 元件非同步完成。 您的應用程式必須包含 IWMStatusCallback 介面的實作,才能處理鄰近偵測訊息。

鄰近偵測程式會傳送兩則訊息:結果訊息和完成訊息。

偵測程式完成時,會傳送結果訊息WMT_PROXIMITY_RESULT。 OnStatus回呼方法的hr參數指出裝置是否接近用戶端電腦。 如果結果訊息的 hr 參數指出成功, pValue 參數會包含 DWORD ,以毫秒為單位指定裝置的測量延遲。

完成偵測時,會傳送完成訊息WMT_PROXIMITY_COMPLETED。 您應該只在收到此訊息之後,才釋放 IWMProximityDetection 介面。

當裝置的鄰近偵測成功時,會自動更新裝置註冊資料庫。 後續對 IWMRegisteredDevice::IsValid 的呼叫會傳回 TRUE ,直到超過 48 小時,且需要重新驗證裝置。

注意 此 SDK 的 x64 型版本不支援 DRM。

使用 Windows Media DRM 10 進行網路裝置通訊協定