Vorgehensweise: Installieren und Konfigurieren von WCF-Aktivierungskomponenten

Dieses Thema beschreibt die Schritte, die erforderlich sind, um den Windows Process Activation Service (auch als WAS bekannt) unter Windows Vista einzurichten, um Windows Communication Foundation (WCF)-Dienste zu hosten, die nicht über HTTP-Netzwerkprotokolle kommunizieren. In den folgenden Abschnitten werden die für diese Konfiguration erforderlichen Schritte kurz beschrieben:

  • Installieren Sie die (oder bestätigen Sie die Installation der) WCF-Aktivierungskomponenten.

  • Konfigurieren Sie WAS, sodass Nicht-HTTP-Protokolle unterstützt werden. Mit den folgenden Schritten wird Windows Vista für die TCP-Aktivierung konfiguriert.

Nachdem Sie WAS installiert und konfiguriert haben, lesen Sie Vorgehensweise: Hosten eines WCF-Dienstes in WAS erfahren Sie, wie Sie einen WCF-Dienst erstellen, der einen Nicht-HTTP-Endpunkt bereitstellt, der WAS verwendet.

So installieren Sie die WCF-Aktivierungskomponenten für andere Protokolle als HTTP

  1. Klicken Sie auf die Schaltfläche Start und dann auf Systemsteuerung.

  2. Klicken Sie auf Programme und dann auf Programme und Funktionen.

  3. Klicken Sie im Menü Aufgaben auf Windows-Funktionen ein- oder ausschalten.

  4. Finden Sie den Knoten WinFX, wählen Sie ihn aus und erweitern Sie ihn dann.

  5. Aktivieren Sie das Feld Nicht-HttpAktivierungskomponenten von WCF, und speichern Sie die Einstellung.

So konfigurieren Sie den WAS, sodass die TCP-Aktivierung unterstützt wird

  1. Zur Unterstützung der net.tcp-Aktivierung muss die Standardwebsite zuerst an einen net.tcp-Port gebunden werden. Sie können hierzu das Tool Appcmd.exe verwenden, das mit dem IIS 7.0-Verwaltungstoolset installiert wird. Führen Sie in einem Eingabeaufforderungsfenster auf Administratorebene den folgenden Befehl aus.

    %windir%\system32\inetsrv\appcmd.exe set site "Default Web Site" -+bindings.[protocol='net.tcp',bindingInformation='808:*']
    

    Hinweis

    Dieser Befehl ist eine einzelne Textzeile. Mit dem Befehl wird eine neue net.tcp-Sitebindung der Standardwebsite hinzugefügt, die TCP-Anschluss 808 mit jedem beliebigen Hostnamen überwacht.

  2. Alle Anwendungen innerhalb einer Site nutzen zwar eine gemeinsame net.tcp-Bindung, aber jede Anwendung kann die net.tcp-Unterstützung unabhängig von den anderen Anwendungen aktivieren. Um net.tcp für die Anwendung zu aktivieren, führen Sie den folgenden Befehl in einem Eingabeaufforderungsfenster auf Administratorebene aus.

    %windir%\system32\inetsrv\appcmd.exe set app
    "Default Web Site/<WCF Application>" /enabledProtocols:http,net.tcp
    

    Hinweis

    Dieser Befehl ist eine einzelne Textzeile. Dieser Befehl ermöglicht den Zugriff auf die / <WCF Application>-Anwendung sowohl über http://localhost/<WCF Application> als auch über net.tcp://localhost/<WCF Application>.

    Entfernen Sie die net.tcp-Sitebindung, die für dieses Beispiel hinzugefügt wurde.

    Zur Vereinfachung sind die folgenden beiden Schritte in einer Batchdatei namens RemoveNetTcpSiteBinding.cmd implementiert, die sich im Beispielverzeichnis befindet.

    1. Entfernen Sie net.tcp aus der Liste aktivierter Protokolle, indem Sie den folgenden Befehl in einem Eingabeaufforderungsfenster auf Administratorebene ausführen.

      %windir%\system32\inetsrv\appcmd.exe set app
      "Default Web Site/servicemodelsamples<WCF Application>" " /enabledProtocols:http
      

      Hinweis

      Dieser Befehl ist eine einzelne Textzeile.

    2. Entfernen Sie die net.tcp-Sitebindung, indem Sie den folgenden Befehl in einem Eingabeaufforderungsfenster auf Administratorebene ausführen:

      %windir%\system32\inetsrv\appcmd.exe set site "Default Web Site"
      --bindings.[protocol='net.tcp',bindingInformation='808:*']
      

      Hinweis

      Dieser Befehl ist eine einzelne Textzeile.

So entfernen Sie net.tcp aus der Liste aktivierter Protokolle

  1. Um net.tcp aus der Liste aktivierter Protokolle zu entfernen, führen Sie den folgenden Befehl in einem Eingabeaufforderungsfenster auf Administratorebene aus.

    %windir%\system32\inetsrv\appcmd.exe set app "Default Web Site/servicemodelsamples<WCF Application>" " /enabledProtocols:http
    

    Hinweis

    Dieser Befehl ist eine einzelne Textzeile.

So entfernen Sie die net.tcp-Bindung

  1. Um die net.tcp-Sitebindung zu entfernen, führen Sie den folgenden Befehl in einem Eingabeaufforderungsfenster auf Administratorebene aus.

    %windir%\system32\inetsrv\appcmd.exe set site "Default Web Site"
    -bindings.[protocol='net.tcp',bindingInformation='808:*']
    

    Hinweis

    Dieser Befehl ist eine einzelne Textzeile.

Siehe auch