Einmaliges Setupverfahren für Windows Communication Foundation-Beispiele
Die meisten Windows Communication Foundation (WCF)-Beispiele werden in Internetinformationsdienste (IIS) gehostet und von einem gemeinsamen virtuellen Verzeichnis ausgeführt. In diesem einmaligen Setupverfahren wird ein Ordner auf dem Datenträger erstellt. Außerdem wird in IIS das virtuelle Verzeichnis ServiceModelSamples hinzugefügt.
Das virtuelle Verzeichnis ServiceModelSamples wird zum Erstellen und Ausführen aller Beispiele verwendet, in denen ein von IIS gehosteter Dienst verwendet wird. 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 mit Windows 7, Windows Vista oder Windows Server 2008 R2 arbeiten, müssen Sie außerdem die Eingabeaufforderung mit erweiterten Berechtigungen ausführen. Klicken Sie hierzu mit der rechten Maustaste auf das Symbol für die Eingabeaufforderung, und klicken Sie dann auf Als Administrator ausführen. Alle Befehle in diesem Thema müssen an einer Eingabeaufforderung ausgeführt werden, die über die richtigen Pfadeinstellungen verfügt. Dies kann am einfachsten sichergestellt werden, wenn Sie die Visual Studio-Eingabeaufforderung verwenden. Klicken Sie zum Öffnen dieser Eingabeaufforderung auf Start und auf Alle Programme. Führen Sie einen Bildlauf nach unten bis Visual Studio 2010 aus, wählen Sie Visual Studio Tools aus, und klicken Sie mit der rechten Maustaste auf Visual Studio-Eingabeaufforderung (2010). Klicken Sie dann auf Als Administrator ausführen. Wenn Sie eine Visual Studio Express Edition installiert haben, ist diese Eingabeaufforderung nicht verfügbar. In diesem Fall müssen Sie dem Systempfad "C:\Windows\Microsoft.Net\Framework\v4.0" hinzufügen. |
Einmaliges Setupverfahren für WCF-Beispiele
Stellen Sie sicher, dass ASP.NET eingerichtet ist. Weitere Informationen über das Einrichten von ASP.NET finden Sie unter Hostinganweisungen des Internetinformationsdiensts.
Stellen Sie sicher, dass .NET Framework, Version 4 installiert ist. Durchsuchen Sie das folgende Verzeichnis nach v4.0 (oder höher): \Windows\Microsoft.NET\Framework
Wenn Visual Studio 2010 nicht installiert ist und das Betriebssystem nicht Windows Server 2008 SP2 oder höher ist, installieren Sie den Hotfix 251798.
Führen Sie die folgenden Befehle durch. Weitere Informationen dazu, warum diese Befehle ausgeführt werden müssen, finden Sie unter IIS Hosted Service Fails.
Vorsicht: 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
Vorsicht: Wenn der Befehl aspnet_regiis –i –enable ausgeführt wird, wird der Standardanwendungspool mit .NET Framework 4 ausgeführt. Dadurch kann es zu Inkompatibilitätsproblemen bei anderen Anwendungen auf demselben Computer kommen. Folgen Sie den Firewall-Anweisungen zum Aktivieren der in den Beispielen verwendeten Anschlüsse.
Suchen Sie nach dem folgenden Standardverzeichnis: <Installationslaufwerk>:\WF_WCF_Samples. Wenn die Beispiele bereits installiert wurden, ist dies das Standardverzeichnis.
Wenn die Beispiele nicht installiert sind, installieren Sie sie von der Beispiel-Downloadseite für Visual C# bzw. Visual Basic.
Wechseln Sie nach dem Installieren der Beispiele zu folgendem Verzeichnis: <Installationslaufwerk>:\WF_WCF_Samples\WCF\Setup\
Führen Sie die Batchdatei Setupvroot.bat aus. Die folgenden Schritte werden 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 manuell einrichten möchten, finden Sie Informationen unter Anleitung zum Einrichten eines virtuellen Verzeichnisses. Um alle in diesem Schritt vorgenommenen Änderungen rückgängig zu machen, führen Sie cleanupvroot.bat aus, sobald die Beispiele nicht mehr benötigt werden.
Hinweis: Diese Prozedur muss nur einmal auf einem Computer ausgeführt werden, es sei denn, cleanupvroot.bat wird ausgeführt. 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 (2010) als Administrator ausführen, oder Sie können die Beispiele als Administrator in Visual Studio 2010 erstellen.
Hinweis: Wenn dieser Schritt nicht ausgeführt wird, lässt sich keines der von IIS gehosteten Beispiele erstellen. Legen Sie die Berechtigungen unbedingt richtig fest, oder führen Sie die SDK-Eingabeaufforderung und Visual Studio-Eingabeaufforderung (2010) als Administrator aus. Erstellen Sie das Verzeichnis C:\logs auf dem Computer. Möglicherweise wird es bei einigen Beispielen vorausgesetzt. 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. Unter Windows Server 2008 ist es das Konto NT-Autorität\Netzwerkdienst. Unter Windows XP und Windows Server 2003 lautet das Konto ASPNET.
Führen Sie die Datei Setupcerttool.bat aus. Diese Datei befindet sich im Ordner <Installationspfad>\WF_WCF_Samples\WCF\Setup\. Mit diesem Skript werden folgende Aufgaben ausgeführt:
Erstellen des Tools FindPrivateKey
Erstellen eines Verzeichnisses mit dem Namen %ProgramFiles%\ServiceModelSampleTools
Kopieren Sie das neue Tool 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 vorhergehenden Setupschritten gewährten Berechtigungen, indem Sie die Batchdatei Cleanupvroot.bat nach Abschluss der Beispiele ausführen. 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 von den Beispielen verwendete HTTP-Namespaces gewährt werden. Weitere Informationen über dazu, wie Namespacereservierungen konfiguriert werden, finden Sie unter Konfigurieren von HTTP und HTTPS.
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. Einige Beispiele erfordern Zertifikate. Siehe Installationsanleitung für IIS-Serverzertifikate (Internetinformationsdienste).