開始使用 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、探測或 解析 訊息不會在網路上傳輸,因為應用程式未正確列舉多播網路介面。 | 使用 WSD 調試客戶端來驗證多播流量 | Hello、Probe 或 Resolve 訊息不會出現在 WSD 偵錯客戶端輸出中。 封包不會出現在網路上。 封包不會針對回送介面或其他介面產生。 |
探查 訊息不會由 UDP 多播傳送至埠 3702(針對未使用導向探索的應用程式)。 | 檢查 UDP WS-Discovery 的網路追蹤 | 檢查訊息時,會顯示它已傳送到錯誤的埠。 |
探針 訊息不包含 Types 元素,或者 Types 元素為空。 | 檢查 UDP WS-Discovery 的網路追蹤 或 應用程式使用導向探索時的網路追蹤 | 檢查訊息會顯示 Types 元素不存在或空白。 |
探查 訊息的 Types 元素不包含主機將回應的類型。 | 檢查 UDP WS-Discovery 的網路追蹤 或 檢查應用程式使用定向探索的網路追蹤 | 檢查訊息會顯示 Types 元素包含格式不正確或不正確的值。 |
ProbeMatches 訊息未以單播方式傳送到傳送 探測 的 UDP 連接埠。 | 檢查 UDP WS-Discovery 的網路追蹤 或 檢查使用定向探索的應用程式的網路追蹤 | 輸出的檢查顯示未傳送任何 ProbeMatches) 訊息,或訊息傳送到錯誤的埠。
注意: 針對使用導向探索的應用程式,ProbeMatches 必須透過 HTTP 或 HTTPS 傳送,以回應 探查 訊息。 |
ProbeMatches 訊息不包含 RelatesTo 元素,或是 RelatesTo 元素是空的。 | 檢查 UDP WS 探索的網路追蹤 或 檢查應用程式使用導向探索的網路追蹤 | 訊息的檢查顯示,RelatesTo 元素不存在或空白。 |
ProbeMatches 訊息中 RelatesTo 元素的值與對應的 探查 訊息中的 MessageId 元素的值不符。 | 檢查 UDP WS-Discovery 的網路追蹤 或 檢查使用導向探索的應用程式的網路追蹤 | 訊息的檢查顯示,RelatesTo 元素包含格式不正確或不正確的值。 |
ProbeMatches 訊息中包含的 XAddrs 元素不符合 XAddr 驗證規則 。 | 檢查用於 UDP WS-探索的網路追蹤 或 檢查使用導向探索的應用程式的網路追蹤 | 檢查訊息時,會顯示 XAddrs 無效。 |
Resolve 訊息不會由 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 元素包含格式不正確或不正確的值。 |