Adición de adaptadores de escucha <add>
Información general
El elemento <add>
de <listenerAdapters>
especifica los valores de configuración de un adaptador de escucha que no es HTTP que el Servicio de activación de procesos (WAS) de Windows puede usar para comunicarse con un servicio de escucha.
Compatibilidad
Versión | Notas |
---|---|
IIS 10.0 | El elemento <add> no se modificó en IIS 10.0. |
IIS 8.5 | El elemento <add> no se modificó en IIS 8.5. |
IIS 8.0 | El elemento <add> no se modificó en IIS 8.0. |
IIS 7.5 | El elemento <add> no se modificó en IIS 7.5. |
IIS 7.0 | El elemento <add> del elemento <listenerAdapters> se introdujo en IIS 7.0. |
IIS 6,0 | N/D |
Configuración
El elemento <add>
del elemento <listenerAdapters>
se incluye en la instalación predeterminada de IIS 7.
Procedimientos
No hay ninguna interfaz de usuario para agregar adaptadores de agente de escucha para IIS 7. Para obtener ejemplos de cómo agregar adaptadores de escucha mediante programación, consulte la sección ejemplos de código de este documento.
Configuración
Atributos
Atributo | Descripción |
---|---|
identity |
Atributo de cadena opcional. Especifica un nombre de cuenta local, una cuenta de dominio o una cuenta integrada. La identidad se usa para ayudar a proteger el canal de comunicación WAS entre el servicio de escucha y el adaptador del agente de escucha. |
name |
Atributo de cadena necesario. Especifica el nombre único del adaptador del agente de escucha al que WAS conecta el servicio de escucha. |
protocolManagerDll |
Atributo de cadena opcional. Especifica la ruta de acceso completa o el nombre corto del archivo DLL que contiene el código del adaptador del agente de escucha. El archivo DLL debe encontrarse en el disco (mediante procedimientos de búsqueda estándar que dependen del tipo DLL) para que se llame a la función especificada en protocolManagerDllInitFunction. |
protocolManagerDllInitFunction |
Atributo de cadena opcional. Especifica el nombre de la función que se va a llamar en el código del adaptador del agente de escucha personalizado. El archivo DLL especificado en el atributo protocolManagerDll debe contener la función especificada en el atributo protocolManagerDllInitFunction. Nota: Este atributo distingue mayúsculas de minúsculas; debe usar el caso correcto al especificar el nombre de la función de inicialización. |
Elementos secundarios
Ninguno.
Ejemplo de configuración
En el ejemplo de configuración siguiente se agrega un adaptador de agente de escucha para un proveedor de protocolo Gopher y se especifica el nombre del archivo DLL y su función de inicialización.
<system.applicationHost>
<listenerAdapters>
<add name="gopher"
protocolManagerDll="%SystemRoot%\system32\inetsrv\gophersvc.dll"
protocolManagerDllInitFunction="GopherInit" />
</listenerAdapters>
</system.applicationHost>
Código de ejemplo
Los ejemplos de código siguientes agregan un adaptador de agente de escucha para un proveedor de protocolo Gopher y especifican el nombre del archivo DLL y su función de inicialización.
AppCmd.exe
appcmd.exe set config -section:system.applicationHost/listenerAdapters /+"[name='gopher',protocolManagerDll='%SystemRoot%\system32\inetsrv\gophersvc.dll',protocolManagerDllInitFunction='GopherInit']" /commit:apphost
Nota:
Debe asegurarse de establecer el parámetro de confirmación en apphost
cuando use AppCmd.exe para configurar estas opciones. Esto confirma los valores de configuración en la sección de ubicación adecuada del archivo ApplicationHost.config.
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()