Windows Communication Foundation サンプルの 1 回限りのセットアップの手順

ほとんどの Windows Communication Foundation (WCF) サンプルは、インターネット インフォメーション サービス (IIS) でホストされ、共通の仮想ディレクトリから実行されます。この 1 回限りのセットアップの手順では、ディスク上にフォルダーを作成します。また、ServiceModelSamples という名前の仮想ディレクトリを IIS に追加します。

ServiceModelSamples 仮想ディレクトリは、IIS でホストされるサービスを使用するすべてのサンプルのビルドと実行に使用されます。サンプルの実行に必要な仮想ディレクトリはこれだけです。サンプルをビルドすると、この仮想ディレクトリにある、以前に配置されたサービスがすべて置き換えられます。この仮想ディレクトリには最近ビルドされたサンプルだけが配置されるため、そのサンプルしか使用できません。

ms751527.note(ja-jp,VS.100).gif注 :
すべてのコマンドは、ローカル管理者アカウントで実行する必要があります。Windows 7、Windows Vista、または Windows Server 2008 R2 を使用している場合は、コマンド プロンプトも管理者権限で実行する必要があります。これには、コマンド プロンプトのアイコンを右クリックし、[管理者として実行] をクリックします。このトピックで使用するすべてのコマンドは、適切なパスが設定されているコマンド プロンプトで実行する必要があります。このようにするための最も簡単な方法は、Visual Studio コマンド プロンプトを使用する方法です。Visual Studio コマンド プロンプトを開くには、[スタート] ボタンをクリックして [すべてのプログラム] をポイントし、下方向へスクロールして [Visual Studio 2010][Visual Studio Tools] の順にクリックします。次に、[Visual Studio コマンド プロンプト (2010)] を右クリックして、[管理者として実行] をクリックします。Visual Studio Express Editions のいずれかがインストールされている場合は、このコマンド プロンプトを使用できません。この場合、システム パスに "C:\Windows\Microsoft.Net\Framework\v4.0" を追加する必要があります。

WCF サンプルの 1 回限りのセットアップの手順

  1. ASP.NET がセットアップされていることを確認します。ASP.NET の設定方法詳細情報、「インターネット インフォメーション サービスのホスティング手順」を参照してください。

  2. .NET Framework Version 4 がインストールされていることを確認します。\Windows\Microsoft.NET\Framework ディレクトリに、v4.0 以降があることを確認します。

  3. Visual Studio 2010 がインストールされておらず、オペレーティング システムが Windows Server 2008 SP2 以降でない場合は、修正プログラム 251798 をインストールします。

  4. 次のコマンドを実行します。これらのコマンドを実行しなければならない理由については、「IIS Hosted Service Fails」を参照してください。

    ms751527.Warning(ja-jp,VS.100).gif 注意 :
    IIS を再インストールした場合は、次のコマンドを再実行します。

    "%WINDIR%\Microsoft.Net\Framework\v4.0.30319\aspnet_regiis" –i –enable
    "%WINDIR%\Microsoft.Net\Framework\v4.0.30319\ServiceModelReg.exe" -r
    
    ms751527.Warning(ja-jp,VS.100).gif 注意 :
    コマンド aspnet_regiis –i –enable を実行すると、.NET Framework 4 を使用して、既定のアプリケーション プールが実行されます。このとき、同じコンピューター上の他のアプリケーションで非互換性の問題が発生することがあります。

  5. ファイアウォール手順」に従って、サンプルで使用するポートを有効にします。

  6. 既定のディレクトリ (<InstallDrive>InstallDrive:\WF_WCF_Samples) を確認してください。サンプルが既にインストールされている場合は、これが既定のディレクトリです。

  7. サンプルがインストールされていない場合は、Visual C# または Visual Basic のサンプルのダウンロード場所からインストールします。

  8. サンプルをインストールした後、<InstallDrive>:\WF_WCF_Samples\WCF\Setup\ に移動します。

  9. Setupvroot.bat バッチ ファイルを実行します。次の手順が実行されます。

    • ServiceModelSamples という名前の仮想ディレクトリが IIS に作成されます。

    • %SystemDrive%\Inetpub\wwwroot\ServiceModelSamples and %SystemDrive%\Inetpub\wwwroot\ServiceModelSamples\bin という名前の新しいディスク ディレクトリが作成されます。

    これらのディレクトリを手動でセットアップする場合は、「仮想ディレクトリのセットアップ手順」を参照してください。この手順で行ったすべての変更を元に戻すには、サンプルの使用が終わった後で cleanupvroot.bat を実行します。

    ms751527.note(ja-jp,VS.100).gif注 :
    cleanupvroot.bat を実行しない限り、この手順を実行するのは、1 台のコンピューターで 1 回だけです。

  10. サンプルおよび Network Service ユーザーのビルドに使用するアカウントに対し、%SystemDrive%\inetpub\wwwroot の変更権限を付与する必要があります。ビルドの実行時に、Web ホストの一部のサンプルがコンパイル済みバイナリを前述の場所にコピーしようとする場合があり、適切な権限が設定されていないと、ビルドは破損します。代わりに、アクセス許可の設定はそのままにして、SDK コマンド プロンプトまたは Visual Studio コマンド プロンプト (2010) を管理者として実行するか、Visual Studio 2010 を管理者として実行し、サンプルをビルドすることもできます。

    ms751527.note(ja-jp,VS.100).gif注 :
    この手順を完了していない場合は、ビルドの実行時に IIS でホストされているすべてのサンプルでエラーが発生します。アクセス許可が正しく設定されていることを確認するか、SDK コマンド プロンプトと Visual Studio コマンド プロンプト (2010) を管理者として実行してください。

  11. コンピューター上に C:\logs ディレクトリを作成します (一部のサンプルで必要になることがあります)。このフォルダーに対する書き込みアクセスが適切なアカウントに付与されていることを確認してください。このアカウントは、Windows 7、Windows Vista、Windows Server 2008 R2 では Network Service、Windows Server 2008 では NT Authority\Network Service、Windows XP および Windows Server 2003 では ASPNET です。

  12. Setupcerttool.bat ファイルを実行します。このファイルは、<InstallPath>\WF_WCF_Samples\WCF\Setup\ フォルダーにあります。このスクリプトでは、次のタスクが実行されます。

    • FindPrivateKey ツールをビルドします。

    • %ProgramFiles%\ServiceModelSampleTools という名前のディレクトリを作成します。

    • 新しい FindPrivateKey ツールをこのディレクトリにコピーします。

    このツールは、証明書を使用して IIS でホストされるサンプルで必要です。

    ms751527.note(ja-jp,VS.100).gif注 :
    セキュリティの目的で、サンプルの使用が終わったら、このセットアップ手順で付与された仮想ディレクトリの定義とアクセス許可を必ず削除してください。削除するには、Cleanupvroot.bat という名前のバッチ ファイルを実行します。

  13. 自己ホスト型の (IIS でホストされていない) サンプルでは、リッスンを行うコンピューター上で HTTP アドレスを登録するためのアクセス許可が必要です。HTTP 名前空間予約のアクセス許可は、サンプルの実行に使用されるユーザー アカウントから提供されます。既定では、管理者アカウントには、任意の HTTP アドレスを登録するためのアクセス許可があります。管理者以外のアカウントの場合は、サンプルで使用される HTTP 名前空間へのアクセス許可が付与される必要があります。名前空間予約の構成方法詳細情報、「HTTP および HTTPS の構成」を参照してください。

  14. 一部のサンプルにはメッセージ キューが必要です。インストールの処理手順については、「メッセージ キュー (MSMQ) のインストール」を参照してください。

    ms751527.note(ja-jp,VS.100).gif注 :
    メッセージ キューが必要なサンプルを実行する場合は、MSMQ サービスを事前に開始しておいてください。

  15. 一部のサンプルには証明書が必要です。「インターネット インフォメーション サービス (IIS) サーバー証明書インストール手順」を参照してください。