Einmaliges Setupverfahren für Windows Communication Foundation-Beispiele

Die meisten Windows Communication Foundation-Beispiele (WCF) werden in den Internetinformationsdiensten (Internet Information Services, IIS) gehostet und von einem gemeinsamen virtuellen Verzeichnis aus ausgeführt. Bei diesem einmaligen Setupverfahren wird ein Ordner auf dem Datenträger erstellt, und es wird ein virtuelles Verzeichnis mit dem Namen ServiceModelSamples zu IIS hinzugefügt.

Das virtuelle Verzeichnis ServiceModelSamples wird zum Erstellen und Ausführen aller Beispiele verwendet, die einen von IIS gehosteten Dienst verwenden. Dies ist das einzige virtuelle Verzeichnis, das zum Ausführen der Beispiele erforderlich ist. Durch die Erstellung eines Beispiels werden alle zuvor bereitgestellten Dienste in diesem virtuellen Verzeichnis ersetzt. Nur das zuletzt erstellte Beispiel wird bereitgestellt und ist dann in diesem virtuellen Verzeichnis verfügbar.

Hinweis

  • Sie müssen alle Befehle unter einem lokalen Administratorkonto ausführen. Wenn Sie Windows 7, Windows Vista oder Windows Server 2008 R2 verwenden, müssen Sie außerdem die Eingabeaufforderung mit erhöhten Rechten ausführen. Klicken Sie dazu mit der rechten Maustaste auf das Symbol für die Eingabeaufforderung, und klicken Sie dann auf Als Administrator ausführen.
  • Alle Befehle in diesem Artikel müssen in einer Eingabeaufforderung ausgeführt werden, die über die richtigen Pfadeinstellungen verfügt. Dies kann am einfachsten sichergestellt werden, wenn Sie die Developer-Eingabeaufforderung für Visual Studio verwenden.

Einmaliges Setupverfahren für WCF-Beispiele

  1. Stellen Sie sicher, dass ASP.NET eingerichtet ist. Weitere Informationen zum Einrichten von ASP.NET finden Sie im Artikel mit Anweisungen zum IIS-Hosting.

  2. Microsoft .NET Framework 4 oder höher ist installiert. Suchen Sie im folgenden Verzeichnis nach v4.0 (oder höher): \Windows\Microsoft.NET\Framework

  3. Stellen Sie sicher, dass Visual Studio 2012 oder höher installiert ist, oder dass Sie Windows Server 2008 SP2 oder höher als Betriebssystem verwenden.

  4. Führen Sie die folgenden Befehle aus: Weitere Informationen dazu, warum diese Befehle ausgeführt werden müssen, finden Sie unter IIS-gehosteter Dienst schlägt fehl.

    Warnung

    Wenn IIS neu installiert wird, müssen die folgenden Befehle noch einmal ausgeführt werden.

    "%WINDIR%\Microsoft.Net\Framework\v4.0.30319\aspnet_regiis" –i –enable
    "%WINDIR%\Microsoft.Net\Framework\v4.0.30319\ServiceModelReg.exe" -r
    

    Warnung

    Wenn Sie den Befehl aspnet_regiis –i –enable ausführen, wird der standardmäßige App-Pool mit .NET Framework 4 ausgeführt, was zu Inkompatibilitätsproblemen bei anderen Anwendungen auf demselben Computer führen kann.

  5. Befolgen Sie die Firewallanweisungen, um die in den Beispielen verwendeten Ports zu aktivieren.

  6. Führen Sie die Batchdatei Setupvroot.bat aus. Es werden folgende Schritte ausgeführt:

    • In IIS wird ein virtuelles Verzeichnis mit dem Namen ServiceModelSamples erstellt.

    • Es werden die neuen Datenträgerverzeichnisse %SystemDrive%\Inetpub\wwwroot\ServiceModelSamples und %SystemDrive%\Inetpub\wwwroot\ServiceModelSamples\bin erstellt.

    Wenn Sie diese Verzeichnisse lieber manuell einrichten möchten, lesen Sie die Anleitung zum Einrichten eines virtuellen Verzeichnisses. Um alle in diesem Schritt vorgenommenen Änderungen rückgängig zu machen, führen Sie cleanupvroot.bat aus, wenn Sie mit den Beispielen fertig sind.

    Hinweis

    Dieser Vorgang muss nur ein einziges Mal auf einem Computer durchgeführt werden – es sei denn, Sie führen „cleanupvroot.bat“ aus.

  7. Sie müssen dem Konto, unter dem Sie die Beispiele erstellen, und dem Netzwerkdienstbenutzer die Berechtigung zum Ändern von %SystemDrive%\inetpub\wwwroot zuweisen. Beim Erstellen wird bei einigen im Internet gehosteten Beispielen möglicherweise versucht, die kompilierten Binärdateien an den oben genannten Speicherort zu kopieren. Wenn Sie nicht die entsprechenden Berechtigungen festgelegt haben, können die Beispiele nicht erstellt werden. Sie können die Berechtigungen aber auch unverändert lassen und die SDK-Eingabeaufforderung oder die Visual Studio-Eingabeaufforderung (2012) als Administrator*in ausführen, oder Sie können die Beispiele als Administrator*in in Visual Studio 2012 erstellen.

    Hinweis

    Wenn dieser Schritt nicht ausgeführt wird, lässt sich keines der von IIS gehosteten Beispiele erstellen. Vergewissern Sie sich, dass Sie die Berechtigungen richtig festgelegt haben, oder führen Sie sowohl die SDK-Eingabeaufforderung als auch die Visual Studio-Eingabeaufforderung als Administrator*in aus.

  8. Legen Sie ein Verzeichnis „C:\logs“ auf dem Computer an, da es für einige Beispiele möglicherweise vorausgesetzt wird. Stellen Sie sicher, dass das entsprechende Konto Schreibzugriff auf diesen Ordner hat. Unter Windows 7, Windows Vista und Windows Server 2008 R2 ist dies das Konto Netzwerkdienst. Für Windows Server 2008 lautet das Konto „NT-Autorität\Netzwerkdienst“. Für Windows XP und Windows Server 2003 lautet das Konto „ASPNET“.

  9. Führen Sie die Datei Setupcerttool.bat aus. Das Skript führt die folgenden Aufgaben aus:

    • Erstellen des Tools FindPrivateKey

    • Erstellen eines Verzeichnisses mit dem Namen „%ProgramFiles%\ServiceModelSampleTools“

    • Kopieren des neuen Tools FindPrivateKey in dieses Verzeichnis

    Dieses Tool ist für Beispiele erforderlich, die Zertifikate verwenden und in IIS gehostet werden.

    Hinweis

    Entfernen Sie aus Sicherheitsgründen die Definition des virtuellen Verzeichnisses und die in den vorherigen Setupschritten gewährten Berechtigungen, indem Sie die Batchdatei cleanupvroot.bat ausführen, wenn Sie mit den Beispielen fertig sind.

  10. Für selbst gehostete Beispiele (nicht in IIS gehostet) ist auf dem Computer die Berechtigung zum Registrieren von HTTP-Adressen für die Überwachung erforderlich. Die Berechtigung für eine HTTP-Namespacereservierung wird von dem Benutzerkonto übernommen, das zum Ausführen des Beispiels verwendet wird. Standardmäßig verfügen Administratorkonten über die Berechtigung zum Registrieren von HTTP-Adressen. Nicht-Administratorkonten muss die Berechtigung für die von den Beispielen verwendeten HTTP-Namespaces gewährt werden. Weitere Informationen zum Konfigurieren von Namespacereservierungen finden Sie unter Configuring HTTP and HTTPS (Konfigurieren von HTTP und HTTPS).

  11. Für einige Beispiele ist Message Queuing erforderlich. Installationsanweisungen finden Sie unter Installieren von Message Queuing (MSMQ).

    Hinweis

    Stellen Sie sicher, dass der MSMQ-Dienst gestartet wurde, bevor Sie Beispiele ausführen, für die Message Queuing erforderlich ist.

  12. Einige Beispiele erfordern Zertifikate. S. Installationsanleitung für IIS-Serverzertifikate (Internetinformationsdienste).