Windows Communication Foundation サンプルの実行

Windows Communication Foundation (WCF) サンプルは、単一コンピュータ構成または複数コンピュータ構成で実行できます。サンプルは、単一コンピュータでそのまま実行できます。複数コンピュータ構成で実行するには、サンプルの構成ファイルの設定を変更する必要があります。単一コンピュータおよび複数コンピュータの構成でサンプルを実行する手順を、次に示します。インターネット インフォメーション サービス (IIS) でホストされるサービスと自己ホスト型のサービスのサンプルとでは、手順が異なります。ほとんどのサンプルは IIS でホストされます。サンプルのホスト方法を判断するには、サンプルの Readme 情報を参照してください。

Windows Vista では、IIS でホストされていないサンプルには、リスナを Http.sys に登録するためのシステム特権が必要です。Httpcfg.exe を使用して、サービスのリッスン アドレスをサービスが実行されているアカウントに登録するか、管理者権限で実行されているコマンド プロンプトでサービスを起動します。

Noteメモ :

WCF サンプルをビルドまたは実行する前に、「Windows Communication Foundation サンプルの 1 回限りのセットアップの手順」に記述されている手順が完了していることを確認してください。

サンプルを同じコンピュータで実行するには

  1. サービスが IIS でホストされている場合は、ブラウザにアドレス https://localhost/servicemodelsamples/service.svc を入力して、サービスにアクセスできることを確認します。これに対して確認ページが表示されます。確認ページが表示されない場合は、「トラブルシューティングのヒント」を参照してください。

  2. サービスが自己ホスト型の場合は、言語固有のフォルダの下の \service\bin にある Service.exe を実行します。サービス アクティビティがサービス コンソール ウィンドウに表示されます。

  3. 言語固有のフォルダの下の \client\bin\ にある Client.exe を実行します。クライアント アクティビティがクライアント コンソール ウィンドウに表示されます。

  4. クライアントとサービス間で通信できない場合は、「トラブルシューティングのヒント」を参照してください。

サンプルを別のコンピュータで実行するには

  1. サービスが IIS でホストされている場合 :

    1. サービス コンピュータで、ServiceModelSamples という仮想ディレクトリを作成します。「Windows Communication Foundation サンプルの 1 回限りのセットアップの手順」に含まれている Setupvroot.bat バッチ ファイルを使用して、ディスク ディレクトリと仮想ディレクトリを作成できます。

    2. サービス プログラム ファイルを %SystemDrive%\Inetpub\wwwroot\servicemodelsamples からサービス コンピュータの ServiceModelSamples 仮想ディレクトリにコピーします。このファイルが \bin ディレクトリにあることを確認します。

    3. ブラウザを使用して、サービスにクライアント コンピュータからアクセスできるかどうかをテストします。

    サービスが自己ホスト型の場合、次の手順を実行します。

    1. サービス コンピュータで、サービス ファイルを保持するディレクトリを作成します。

    2. サービス プログラム ファイルを、言語固有のフォルダにある \service\bin\ フォルダからサービス コンピュータにコピーします。

    3. サービスの構成ファイルで、エンドポイント定義のアドレス値をサービスの新しいアドレスに変更します。アドレスの "localhost" への参照をすべて完全修飾ドメイン名に置き換えます。

    4. コマンド プロンプトから Service.exe を起動します。

  2. クライアントのプログラム ファイルを、言語固有のフォルダにある \client\bin\ フォルダからクライアントのコンピュータにコピーします。

  3. エンドポイント アドレスを設定します。

    1. サービスの実行に使用されているのがドメイン アカウントではない場合、クライアント構成ファイルを開き、エンドポイント定義のアドレス値をサービスの新しいアドレスに変更します。アドレスの "localhost" への参照をすべて完全修飾ドメイン名に置き換えます。

    2. サービスの実行に使用されているのがドメイン アカウントの場合、サービスに対して Svcutil.exe を実行し、クライアントの構成を再生成します。Svcutil.exe の実行の詳細については、「Windows Communication Foundation サンプルのビルド」を参照してください。サンプルの構成ファイルではなく、生成されたファイルを使用します。生成された構成ファイルには、追加の ID 情報があります (また、サービス エンドポイントへの接続に必要なすべての設定が、既定の設定であるにもかかわらず含まれています)。ID の詳細については、「Service Identity and Authentication」および「<identity>」を参照してください。

  4. クライアント コンピュータで、コマンド プロンプトから Client.exe を起動します。

サービスをデバッグするには

  1. (クライアントとサービスの両方で) [Build] メニューを使用するか、または Ctrl キーと Shift キーを押しながら B キーを押して、ソリューションをビルドします。

  2. サービスが IIS でホストされている場合 :

    1. サービスをアクティブ化します。ブラウザにアドレス https://localhost/servicemodelsamples/service.svc を入力します。

    2. ソリューションで、[Debug] メニューの [Attach to Process] をクリックします。

    3. [Show processes from all users] チェック ボックスをオンにします。

    4. デバッグ対象のホスト ワーカー プロセス W3wp.exe を選択します (Windows XP では ASPNet_wp.exe を選択します)。

  3. これで、サービス内にブレークポイントを設定し、例外に対してブレークポイントを有効にできます。

  4. クライアントのプロジェクト項目を右クリックし、[デバッグ][新しいインスタンスを開始] の順にクリックします。

サンプルの実行後にクリーンアップするには

  • サービスがセキュリティの目的で IIS でホストされている場合、サンプルの使用が終わったら、このセットアップで付与された仮想ディレクトリの定義とアクセス許可を削除してください。

関連項目

概念

Windows Communication Foundation サンプルのビルド
サンプルのワークグループでの実行、および別のコンピュータでの実行

その他の技術情報

トラブルシューティングのヒント

Footer image

Copyright © 2007 by Microsoft Corporation.All rights reserved.