使用 WSDAPI 疑難排解消費者入門
此疑難排解指南包含一組診斷 程式 ,可用來協助識別應用程式問題的原因。 成功識別問題的原因之後,即可套用診斷程式中的建議解決方案,以解決問題。
有兩種方式可以判斷要使用的診斷程式。 其中一種方式是移至用戶端類型的疑難排解頁面,以檢視用來對用戶端進行疑難排解的診斷程式逐步清單。 另一種方式是移至下面的疑難排解快速參考,以檢視摘要資料表,以顯示 WSDAPI 應用程式的常見問題,以及用來診斷問題的程式。
依用戶端類型進行疑難排解
下列主題會依用戶端類型顯示相關的診斷程式。 這些主題也會顯示與用戶端類型相關聯的訊息模式。
- 使用導向探索對 WSDAPI 應用程式進行疑難排解
- 針對函式探索用戶端進行疑難排解
- 針對附近人員附近的會議進行疑難排解
- 針對新增印表機精靈進行疑難排解
- 針對網路總管進行疑難排解
- 疑難排解投影機精靈
- 針對其他 WSDAPI 應用程式進行疑難排解
快速參考疑難排解
下表顯示一些問題,可防止 WSDAPI 用戶端和主機在網路上彼此查看,以及交換裝置中繼資料。 這些資料表也會顯示要執行的診斷程式,以及用來評估應用程式是否遇到特定問題的準則。
網路環境問題
問題 | 診斷程式 | 問題識別 |
---|---|---|
防火牆會封鎖網路探索流量。 | 檢查配接器和防火牆設定 | 在防火牆上啟用網路探索例外狀況可解決問題。 |
應用程式特有的防火牆例外狀況會封鎖訊息。 | 檢查配接器和防火牆設定 | 停用防火牆可解決問題。 WF.msc 會顯示應用程式特定的防火牆規則。 |
裝置不會及時傳送 ProbeMatches 或 ResolveMatches 訊息來回應 UDP 要求, (少於 4 秒) 。 | 檢查配接器和防火牆設定 | 停用防火牆可解決問題,而回應少於 4 秒的一般主機可順利運作。 |
應用程式的安全性內容不正確, (也就是說,用戶端和主機在網路) 沒有適當的許可權。 | 使用一般主機和用戶端進行 UDP WS-Discovery 或使用 一般主機和用戶端進行 HTTP 中繼資料交換 | 裝置位址不會顯示在 WSD 偵錯用戶端輸出中。 以系統管理員身分執行應用程式可解決問題。 |
IPSec 原則正在封鎖訊息。 | 使用一般主機和用戶端進行 UDP WS-Discovery 或使用 一般主機和用戶端進行 HTTP 中繼資料交換 | 裝置位址不會顯示在 WSD 偵錯用戶端輸出中。 停用防火牆無法解決問題。 無法在電腦上重現問題,而不受任何 IPSec 原則約束。 |
探索流量問題
問題 | 診斷程式 | 問題識別 |
---|---|---|
Hello、 Probe或 Resolve 訊息不會在網路上傳輸,因為應用程式未正確列舉多播網路介面。 | 使用 WSD 偵錯用戶端來驗證多播流量 | Hello、Probe 或 Resolve 訊息不會出現在 WSD 偵錯用戶端輸出中。 封包不會出現在網路上。 封包不會針對回送介面或其他介面產生。 |
UDP 多播不會將探查訊息傳送至埠 3702 (,應用程式不會使用導向探索) 。 | 檢查 UDP WS-Discovery 的網路追蹤 | 訊息的檢查會顯示它已傳送到錯誤的埠。 |
探查訊息不包含Types元素,或Types元素是空的。 | 檢查 UDP WS 探索的網路追蹤 ,或使用 導向探索檢查應用程式的網路追蹤 | 檢查訊息會顯示 Types 元素不存在或空白。 |
探查訊息的Types元素不包含主機將回應的類型。 | 檢查 UDP WS 探索的網路追蹤 ,或使用 導向探索檢查應用程式的網路追蹤 | 檢查訊息會顯示 Types 元素包含格式不正確或不正確的值。 |
ProbeMatches訊息未傳送至傳送探查的來源 UDP 埠。 | 檢查 UDP WS 探索的網路追蹤 ,或使用 導向探索檢查應用程式的網路追蹤 | 輸出檢查顯示未傳送 ProbeMatches) 訊息,或訊息傳送到錯誤的埠。
注意: 對於使用導向探索的應用程式, ProbeMatches 必須透過 HTTP 或 HTTPS 傳送,以回應 探查 訊息。 |
ProbeMatches訊息不包含RelatesTo元素,或RelatesTo元素是空的。 | 檢查 UDP WS 探索的網路追蹤 ,或使用 導向探索檢查應用程式的網路追蹤 | 檢查訊息會顯示 RelatesTo 元素不存在或空白。 |
ProbeMatches訊息中RelatesTo元素的值不符合對應探查訊息中MessageId元素的值。 | 檢查 UDP WS 探索的網路追蹤 ,或使用 導向探索檢查應用程式的網路追蹤 | 檢查訊息會顯示 RelatesTo 元素包含格式不正確或不正確的值。 |
ProbeMatches訊息中包含的XAddrs元素不符合XAddr 驗證規則。 | 檢查 UDP WS 探索的網路追蹤 ,或使用 導向探索檢查應用程式的網路追蹤 | 檢查訊息會顯示 XAddrs 無效。 |
解析訊息不會由 UDP 多播傳送至埠 3702 (,應用程式不會使用導向探索) 。 | 檢查 UDP WS 探索的網路追蹤 ,或使用 導向探索檢查應用程式的網路追蹤 | 輸出的檢查會顯示 解析 訊息已傳送至錯誤的埠。 |
ResolveMatches訊息未傳送至傳送解析訊息的 UDP 埠。 | 檢查 UDP WS 探索的網路追蹤 ,或使用 導向探索檢查應用程式的網路追蹤 | 輸出檢查顯示未傳送 ResolveMatches 訊息,或訊息傳送到錯誤的埠。 |
中繼資料交換問題
問題 | 診斷程式 | 問題識別 |
---|---|---|
主機公告的傳輸位址錯誤。 | 使用一般主機和用戶端進行 HTTP 中繼資料交換 | 檢查 WSD 偵錯用戶端輸出中的 XAddrs 會顯示傳輸位址錯誤或格式錯誤。 |
無法建立用於中繼資料交換的 TCP 連線。 | 檢查 HTTP 中繼資料交換的網路追蹤 | 封包分析器的輸出不會顯示下列封包交換:
|
用戶端未傳送有效的 HTTP GET 要求。 | 檢查 HTTP 中繼資料交換的網路追蹤 | 封包分析器輸出中沒有 HTTP GET 要求,或要求格式不正確。 |
用戶端未傳送有效的 WS-Transfer Get 訊息。 | 檢查 HTTP 中繼資料交換的網路追蹤 | 封包分析器輸出中沒有 WS-Transfer 取得 訊息,或訊息格式不正確。 |
主機未接聽 HTTP GET 要求中指定的 URL 路徑。 | 檢查 HTTP 中繼資料交換的網路追蹤 | 封包分析器輸出中沒有 HTTP 回應。 |
WS-Transfer Get 訊息不包含 To 元素,或 To 元素是空的。 | 檢查 HTTP 中繼資料交換的網路追蹤 | 檢查訊息會顯示 To 元素不存在或空白。 |
WS-Transfer Get訊息的To元素值不符合其中一個主機的端點位址。 | 檢查 HTTP 中繼資料交換的網路追蹤 | 檢查訊息會顯示 To 元素的值不符合主機 ProbeMatches 或 ResolveMatches 訊息中公告的其中一個端點位址。 |
主機未傳送有效的 HTTP 回應標頭。 | 檢查 HTTP 中繼資料交換的網路追蹤 | 封包分析器輸出中沒有 HTTP 回應,或要求格式不正確。 |
主機所傳送的 HTTP 回應標頭表示無法完成要求。 | 檢查 HTTP 中繼資料交換的網路追蹤 | 回應標頭具有 HTTP/1.1 200 以外的狀態碼。 |
主機未傳送有效的 GetResponse 訊息。 | 檢查 HTTP 中繼資料交換的網路追蹤 | 封包分析器輸出中沒有 GetResponse 訊息,或訊息格式不正確。 |
GetResponse訊息不包含RelatesTo元素,或RelatesTo元素是空的。 | 檢查 HTTP 中繼資料交換的網路追蹤 | 檢查訊息會顯示 RelatesTo 元素不存在或空白。 |
GetResponse訊息中RelatesTo元素的值不符合對應Get訊息中MessageId元素的值。 | 檢查 HTTP 中繼資料交換的網路追蹤 | 檢查訊息會顯示 RelatesTo 元素包含格式不正確或不正確的值。 |