Freigeben über


Listeneradapter <listenerAdapters>

Übersicht

Das Element <listenerAdapters> gibt Konfigurationseinstellungen für Listeneradapter für Internetinformationsdienste (IIS) 7 an. Listeneradapter sind Komponenten, die die Kommunikation zwischen Nicht-HTTP-Protokolllistener-Diensten und dem Windows Process Activation Service (WAS) herstellen. Änderungen am <listenerAdapters>-Element werden nur wirksam, wenn ein Listeneradapter eine Verbindung mit WAS herstellt. In den meisten Fällen erfordert diese Verbindung, dass der Server neu gestartet wird.

Hinweise:

  • Der World Wide Web Publishing Service (W3SVC) enthält HTTP-spezifische Funktionen für IIS 7, sodass keine zusätzlichen <listenerAdapters>-Attribute verwendet werden. - Der FTP-Dienst, der die WAS nicht erfordert, hat keinen <listenerAdapters>-Eintrag.

Kompatibilität

Version Hinweise
(IIS 10.0 UND HÖHER) Das <listenerAdapters> Element wurde in IIS 10.0 nicht geändert.
IIS 8.5 Das <listenerAdapters> Element wurde in IIS 8.5 nicht geändert.
IIS 8.0 Das <listenerAdapters> Element wurde in IIS 8.0 nicht geändert.
IIS 7.5 Das <listenerAdapters> Element wurde in IIS 7.5 nicht geändert.
IIS 7.0 Das <listenerAdapters>-Element wurde in IIS 7.0 eingeführt.
IIS 6.0 N/V

Setup

Das <listenerAdapters>-Element ist in der Standardinstallation von IIS 7 enthalten.

Gewusst wie

Es gibt keine Benutzeroberfläche zum Hinzufügen von Listeneradaptern für IIS 7. Beispiele zum programmgesteuerten Hinzufügen von Listeneradaptern finden Sie im Abschnitt Codebeispiele dieses Dokuments.

Konfiguration

Attribute

Keine

Untergeordnete Elemente

Element Beschreibung
add Optionales Element.

Gibt die Konfiguration für einen Listeneradapter an.

Konfigurationsbeispiel

Im folgenden Konfigurationsbeispiel wird ein Listeneradapter für einen Gopher-Protokollanbieter hinzugefügt und sowohl der Name der DLL als auch deren Initialisierungsfunktion angegeben.

<system.applicationHost>
   <listenerAdapters>
      <add name="gopher"
         protocolManagerDll="%SystemRoot%\system32\inetsrv\gophersvc.dll"
         protocolManagerDllInitFunction="GopherInit" />
   </listenerAdapters>
</system.applicationHost>

Beispielcode

Die folgenden Codebeispiele fügen einen Listeneradapter für einen Gopher-Protokollanbieter hinzu und geben sowohl den Namen der DLL als auch deren Initialisierungsfunktion an.

AppCmd.exe

appcmd.exe set config -section:system.applicationHost/listenerAdapters /+"[name='gopher',protocolManagerDll='%SystemRoot%\system32\inetsrv\gophersvc.dll',protocolManagerDllInitFunction='GopherInit']" /commit:apphost

Hinweis

Sie müssen unbedingt den Commitparameterapphost festlegen, wenn Sie AppCmd.exe verwenden, um diese Einstellungen zu konfigurieren. Dadurch werden die Konfigurationseinstellungen auf den entsprechenden Speicherortabschnitt in der Datei ApplicationHost.config festgelegt.

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample
{
   private static void Main()
   {
      using (ServerManager serverManager = new ServerManager())
      {
         Configuration config = serverManager.GetApplicationHostConfiguration();
         ConfigurationSection listenerAdaptersSection = config.GetSection("system.applicationHost/listenerAdapters");
         ConfigurationElementCollection listenerAdaptersCollection = listenerAdaptersSection.GetCollection();

         ConfigurationElement addElement = listenerAdaptersCollection.CreateElement("add");
         addElement["name"] = @"gopher";
         addElement["protocolManagerDll"] = @"%SystemRoot%\system32\inetsrv\gophersvc.dll";
         addElement["protocolManagerDllInitFunction"] = @"GopherInit";
         listenerAdaptersCollection.Add(addElement);

         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample

   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetApplicationHostConfiguration
      Dim listenerAdaptersSection As ConfigurationSection = config.GetSection("system.applicationHost/listenerAdapters")
      Dim listenerAdaptersCollection As ConfigurationElementCollection = listenerAdaptersSection.GetCollection

      Dim addElement As ConfigurationElement = listenerAdaptersCollection.CreateElement("add")
      addElement("name") = "gopher"
      addElement("protocolManagerDll") = "%SystemRoot%\system32\inetsrv\gophersvc.dll"
      addElement("protocolManagerDllInitFunction") = "GopherInit"
      listenerAdaptersCollection.Add(addElement)

      serverManager.CommitChanges()
   End Sub

End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var listenerAdaptersSection = adminManager.GetAdminSection("system.applicationHost/listenerAdapters", "MACHINE/WEBROOT/APPHOST");
var listenerAdaptersCollection = listenerAdaptersSection.Collection;

var addElement = listenerAdaptersCollection.CreateNewElement("add");
addElement.Properties.Item("name").Value = "gopher";
addElement.Properties.Item("protocolManagerDll").Value = "%SystemRoot%\\system32\\inetsrv\\gophersvc.dll";
addElement.Properties.Item("protocolManagerDllInitFunction").Value = "GopherInit";
listenerAdaptersCollection.AddElement(addElement);

adminManager.CommitChanges();

VBScript

Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set listenerAdaptersSection = adminManager.GetAdminSection("system.applicationHost/listenerAdapters", "MACHINE/WEBROOT/APPHOST")
Set listenerAdaptersCollection = listenerAdaptersSection.Collection

Set addElement = listenerAdaptersCollection.CreateNewElement("add")
addElement.Properties.Item("name").Value = "gopher"
addElement.Properties.Item("protocolManagerDll").Value = "%SystemRoot%\system32\inetsrv\gophersvc.dll"
addElement.Properties.Item("protocolManagerDllInitFunction").Value = "GopherInit"
listenerAdaptersCollection.AddElement(addElement)

adminManager.CommitChanges()