Freigeben über


Hinzufügen von Listeneradaptern <add>

Übersicht

Das <add>-Element von <listenerAdapters> gibt Konfigurationseinstellungen für einen Nicht-HTTP-Listeneradapter an, der vom Windows-Prozessaktivierungsdienst (WAS) für die Kommunikation mit einem Listenerdienst verwendet werden kann.

Kompatibilität

Version Hinweise
IIS 10.0 Das <add>-Element wurde in IIS 10.0 nicht geändert.
IIS 8.5 Das <add>-Element wurde in IIS 8.5 nicht geändert.
IIS 8.0 Das <add>-Element wurde in IIS 8.0 nicht geändert.
IIS 7.5 Das <add>-Element wurde in IIS 7.5 nicht geändert.
IIS 7.0 Das <add>-Element des <listenerAdapters>-Elements wurde in IIS 7.0 eingeführt.
IIS 6.0 N/V

Setup

Das <add>-Element des <listenerAdapters>-Elements 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

Attribut Beschreibung
identity Optionales Zeichenfolgeattribut.

Gibt einen lokalen Kontonamen, ein Domänenkonto oder ein integriertes Konto an. Die Identität wird verwendet, um den WAS-Kommunikationskanal zwischen dem Listenerdienst und dem Listeneradapter zu sichern.
name Erforderliches Zeichenfolgenattribut.

Gibt den eindeutigen Namen des Listeneradapters an, mit dem WAS den Listenerdienst verbindet.
protocolManagerDll Optionales Zeichenfolgeattribut.

Gibt den vollqualifizierten Pfad oder Kurznamen der DLL an, die den Code des Listeneradapters enthält. Die DLL muss auf dem Datenträger (mithilfe von Standardsuchprozeduren, die vom DLL-Typ abhängig sind) gefunden werden, damit die in protocolManagerDllInitFunction angegebene Funktion aufgerufen werden kann.
protocolManagerDllInitFunction Optionales Zeichenfolgeattribut.

Gibt den Namen der Funktion an, die im code für den benutzerdefinierten Listeneradapter aufgerufen werden soll. Die im protocolManagerDll-Attribut angegebene DLL muss die im protocolManagerDllInitFunction-Attribut angegebene Funktion enthalten.

Hinweis: Bei diesem Attribut wird die Groß-/Kleinschreibung beachtet. Sie müssen die richtige Groß-/Kleinschreibung verwenden, wenn Sie den Namen der Initialisierungsfunktion angeben.

Untergeordnete Elemente

Keine.

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 den commit-Parameter auf apphost 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()