UDP WS-Discoveryに汎用ホストとクライアントを使用する

クライアントとホストがネットワーク上で相互に表示できない場合は、問題のトラブルシューティングに役立つ汎用ホストとクライアントをカスタム ホストとクライアントに置き換えることができます。 デバイス アドレスが WSD デバッグ クライアント出力に表示されない場合は、ネットワーク環境で障害が発生している可能性があります。 汎用ホストとクライアントの詳細については、「 デバッグ ツール」を参照してください。

ホストまたはクライアントが PC で実行されているアプリケーションの場合、汎用ホストまたはクライアントは、実際のホストまたはクライアントと同じセキュリティ コンテキストで実行する必要があります。 たとえば、実際のホストまたはクライアントが管理者として実行されている場合、汎用ホストまたはクライアントは管理者として実行する必要があります。 また、ホストまたはクライアントがスタンドアロン デバイスの場合は、汎用ホストまたはクライアントを実行している PC に完全に置き換える必要があります。

汎用ホストとクライアントを使用して UDP WS-Discovery のトラブルシューティングを行うには

  1. コマンド プロンプト ウィンドウを開きます。

  2. 次のコマンドを実行します。 /mode メタデータのWSDDebug_host.exe /start

    注意

    [アラートのWindows セキュリティ] ダイアログ ボックスが表示される場合があります。 その場合は、[ ブロック解除 ] をクリックして WSD デバッグ ホストを実行できるようにします。

     

    このコマンドは、次のような出力を生成します。 デバイス ID を書き留めます。

    WSDAPI Debug Host
    Copyright (C) Microsoft Corporation 2007.  All rights reserved.
    Device ID is urn:uuid:37f86d35-e6ac-4241-964f-1d9ae46fb366
    Host metadata>
    
  3. 次のコマンドを実行 します。/mode メタデータ /hello off /resolve<id> をWSDDebug_client.exeします。 id は>、手順 2 で識別されたデバイス ID に置き換えます<

    注意

    [アラートのWindows セキュリティ] ダイアログ ボックスが表示される場合があります。 その場合は、[ ブロック解除 ] をクリックして WSD デバッグ クライアントの実行を許可します。

     

WSD デバッグ クライアントでは、次のような出力が生成されます。

WSDAPI Debug Client
Copyright (C) Microsoft Corporation 2007.  All rights reserved.
Client ID is urn:uuid:0f571af7-6b0e-4daf-8054-f2233ac27910
Hello mode is disabled
Client metadata>
*****************************************************************************
Add at 02/28/07 15:16:51
+ EPR:
  + Address:                 urn:uuid:37f86d35-e6ac-4241-964f-1d9ae46fb366
+ Types:
    (wsdp) https://schemas.xmlsoap.org/ws/2006/02/devprof:Device
+ XAddrs:
  https://[::1]:5357/37f86d35-e6ac-4241-964f-1d9ae46fb366
+ Metadata version:          2
+ Instance ID:               1
+ Probe/Resolve tag:         WSDAPI debug_client
+ Remote transport address:  [::1]:3702
+ Local transport address:   ::1
+ Local interface GUID:      42133cd4-6a70-11db-bbc9-806e6f6e6963
Client metadata>

WSD デバッグ クライアントは、多くの DPWS デバイスを持つネットワーク上で大量の出力を生成する場合があります。 出力は、分析を容易にするためにファイルにリダイレクトできます。 WSD デバッグ クライアント プロンプトに 「log tee<filename> 」と入力して、出力をファイルにリダイレクトします。 出力リダイレクトは、WSD デバッグ クライアント プロンプトで 「log tee stop 」と入力することで停止できます。

エンドポイント参照 (EPR) アドレスをメモしておきます。 この EPR アドレスは、上記の手順 2 で識別されたデバイス ID と一致する必要があります。 この場合、アプリケーションの障害は、オペレーティング システムやネットワーク環境に関連していない可能性があります。 汎用ホストとクライアントをカスタム ホストとクライアントに置き換え、「 WSD デバッグ クライアントを使用してマルチキャスト トラフィックを確認する」の手順に従ってトラブルシューティングを続行します。

デバイス ID が EPR アドレスと一致しない場合、アプリケーションエラーはオペレーティング システムまたはネットワーク環境に関連している可能性があります。 このエラーには、次の 1 つ以上の原因が考えられます。

  • アプリケーションが間違ったセキュリティ コンテキストで実行されている。 アプリケーションが正しい資格情報を使用していること、およびクライアントとホストがネットワークにアクセスするための十分なアクセス許可を持っていることを確認します。
  • ファイアウォールの構成が間違っています。 「アダプターとファイアウォールの設定の検査」の手順に従って、Windows ファイアウォール設定が正しいこと、およびパケットを削除する他の規則がないことを確認します。 また、クライアントとホストを "手付かずの" マシン (ドメインに参加したことがない既定のオペレーティング システム のインストールがあるコンピューター) にコピーして、エラーを再現することもできます。
  • IPSec ポリシーがアプリケーションをブロックしています。 IPSec ポリシーの対象ではないマシンにクライアントとホストをコピーし、エラーの再現を試みます。

WSDAPI 診断手順

WSDAPI のトラブルシューティングを使用したはじめに