HandlerAction (clase)
Expone los valores de configuración de los controladores.
Sintaxis
class HandlerAction : CollectionElement
Métodos
Esta clase no contiene métodos.
Propiedades
La siguiente tabla muestra las propiedades expuestas por la clase HandlerAction
.
Nombre | Descripción |
---|---|
AllowPathInfo |
Valor boolean de lectura y escritura. true si el controlador procesará la información de ruta de acceso completa en un identificador uniforme de recursos (URI); de lo contrario, false . El valor predeterminado es false .Por ejemplo, cuando true , esta propiedad permitirá al controlador procesar una ruta de acceso completa, como "/vdir/myisapi.dll/zip"; cuando false , esta propiedad solo permitirá la ruta de acceso parcial "/zip". |
Modules |
Valor de lectura y escritura string que especifica el módulo al que desea asignar un archivo o una extensión. El valor predeterminado es null . |
Name |
Valor de lectura y escritura string único necesario que especifica un nombre único para la asignación del controlador. La única propiedad de clave. |
Path |
Valor de lectura y escritura string que especifica una extensión de archivo o un nombre de archivo con la extensión del tipo de archivo que se va a controlar. El valor predeterminado es null . |
PreCondition |
Valor de lectura y escritura string que, opcionalmente, especifica las condiciones en las que se puede ejecutar el controlador. Los valores posibles se enumeran más adelante en la sección Comentarios. |
RequireAccess |
Enumeración de lectura y escritura sint32 que especifica los requisitos de acceso del controlador. Los valores posibles se enumeran más adelante en la sección Comentarios. |
ResourceType |
Enumeración de lectura y escritura sint32 que especifica el tipo de asignación para el controlador. Los valores posibles se enumeran más adelante en la sección Comentarios. |
ResponseBufferLimit |
Valor de lectura/escritura uint32 que establece el tamaño máximo, en bytes, del búfer de respuesta para un controlador de solicitudes. Si el almacenamiento en búfer de respuesta está habilitado en la propiedad Buffer de la clase PagesSection, la propiedad ResponseBufferLimit controla el número máximo de bytes que una página ASP puede escribir en el búfer de respuesta antes de que se produzca un vaciado. El valor predeterminado son 4194304 bytes. |
ScriptProcessor |
Un valor de lectura/escritura string que especifica la ruta completa al archivo .dll de extensión ISAPI o al archivo .exe CGI que procesa la solicitud, si procede. Si especifica esta propiedad, debe especificar "ISAPIModule" o "CGIModule" en la propiedad Modules . El valor predeterminado es null . |
Type |
Valor de lectura y escritura string que especifica la ruta de acceso del espacio de nombres de un controlador administrado. El tipo especificado debe ser un tipo administrado válido que se encuentra en la caché global de ensamblados, el directorio Bin de la aplicación o el directorio app_code. El valor predeterminado es null . |
Verb |
Valor de lectura y escritura string que especifica una lista delimitada por comas de verbos. Use esta propiedad si desea que la asignación se aplique a tipos de solicitud específicos. El valor predeterminado es null . |
Subclases
Esta clase no contiene subclases.
Comentarios
Las instancias de esta clase se encuentran en la propiedad Handlers
de la clase HandlersSection.
En la siguiente tabla se describen los posibles valores de la propiedad Precondition
. El valor predeterminado es null
.
Nota:
La evaluación de una condición previa es un AND
lógico de los componentes. Dado que cualquier condición previa desconocida se evalúa como false
, la presencia de una condición previa desconocida hará que se omita la condición previa desconocida.
Valor | Descripción |
---|---|
appPoolName=pool1;pool2 | El controlador se usará para cualquier grupo de aplicaciones nombrado en la lista delimitada por puntos y coma. |
appPoolName!=pool1;pool2 | El controlador no se usará para ningún grupo de aplicaciones nombrado en la lista delimitada por puntos y coma. |
bitness32 | La entrada del controlador solo se aplica a los procesos de trabajo de 32 bits. Para equipos de 64 bits, debe usar este valor para especificar qué grupos de aplicaciones se ejecutan en modo de 32 bits. |
bitness64 | El controlador solo se aplica a los procesos de trabajo de 64 bits. Para equipos de 64 bits, debe usar este valor para especificar qué grupos de aplicaciones se ejecutan en modo de 64 bits. |
integratedMode | El controlador solo se usará para grupos de aplicaciones en modo integrado. |
ISAPIMode | El controlador solo se usará para grupos de aplicaciones en modo ISAPI. |
runtimeVersion | El controlador solo se usará para los grupos de aplicaciones que cargan una versión determinada de Common Language Runtime (CLR). Para habilitar esta condición previa, anexe una cadena con el formato vMajorVersion.MinorVersion a la cadena "runtimeVersion" (por ejemplo, "runtimeVersionv2.0"). |
En la siguiente tabla se describen los posibles valores de la propiedad RequireAccess
. El valor predeterminado es 3 (Script
).
Nota:
La configuración de la propiedad AccessPolicy
de la clase HandlersSection determina qué derechos están permitidos y, por tanto, qué controladores pueden ejecutarse.
Valor | Palabra clave | Descripción |
---|---|---|
0 | None |
El controlador no tiene requisitos de acceso. |
1 | Read |
El controlador requiere permiso de lectura. |
2 | Write |
El controlador requiere permiso de escritura. |
3 | Script |
El controlador requiere derechos de script. |
4 | Execute |
El controlador requiere derechos ejecutables. |
En la siguiente tabla se describen los posibles valores de la propiedad ResourceType
. El valor predeterminado es 3 (Unspecified
).
Nota:
Esta propiedad tiene la etiqueta Tipo de ruta de acceso en el Administrador de IIS.
Valor | Palabra clave | Descripción |
---|---|---|
0 | File |
La asignación es para un archivo. Si la solicitud entrante no se asigna a un archivo físico en el disco, la solicitud no se pasa al controlador. |
1 | Directory |
La asignación es para un directorio. Si la solicitud entrante no se asigna a una carpeta física en el disco, la solicitud no se pasa al controlador. |
2 | Either |
La asignación es para un archivo o un directorio. Si la solicitud entrante no se asigna a un archivo físico o carpeta en el disco, la solicitud no se pasa al controlador. |
3 | Unspecified |
No se especifica el tipo de asignación. La solicitud se pasa al controlador independientemente de si la solicitud se asigna a un archivo físico o carpeta en el disco. Use esta configuración si va a asignar el controlador a un nombre de archivo (por ejemplo, "MyHandler.axd") que sabe que no existe en el disco. |
Ejemplo
En el ejemplo siguiente se agregan tres categorías diferentes de controladores a la sección <handlers>
: un controlador de mapa de scripts heredado, dos controladores de módulo nativos y un controlador administrado.
Nota:
Agregar o quitar un elemento de configuración cambia la sección de configuración subyacente, pero no la variable de objeto del script que representa la sección de configuración. Para que el cambio aparezca en los scripts, debe llamar al método WMI Refresh_
en la variable de objeto después de realizar el cambio. Esto actualizará la variable de objeto con los datos más recientes del almacén de configuración.
' Connect to the WMI WebAdministration namespace.
Set oWebAdmin = GetObject("winmgmts:root\WebAdministration")
' Get the <handlers> section.
Set oSite = oWebAdmin.Get("Site.Name='Default Web Site'")
oSite.GetSection "HandlersSection", oHandlersSection
' Display the old list of handlers.
WScript.Echo "---[Old Handler List]---"
Call DisplayHandlers
' Create a legacy script map handler.
' The required properties are Name, Modules, and ScriptProcessor.
Set oHandler = oWebAdmin.Get("HandlerAction").SpawnInstance_
oHandler.Name = "ASPClassic"
oHandler.Path="*.asp"
oHandler.Verb="GET,HEAD,POST"
oHandler.Modules="ISAPIModule"
oHandler.ResourceType= 0 '0 is "File"
oHandler.ScriptProcessor = "%windir%\system32\inetsrv\asp.dll"
' Add the handler to the <handlers> section.
oHandlersSection.Add "Handlers", oHandler
' Create a native module handler for static files.
' The required properties are Name, Modules, and Path.
Set oHandler = oWebAdmin.Get("HandlerAction").SpawnInstance_
oHandler.Name = "StaticFile"
oHandler.Path="*"
oHandler.Verb="*"
oHandler.Modules="StaticFileModule,DefaultDocumentModule,DirectoryListingModule"
oHandler.ResourceType=2
oHandler.RequireAccess=1
' Add the handler to the <handlers> section.
oHandlersSection.Add "Handlers", oHandler
' Create a native module handler for ISAPI DLLs.
' The required properties are Name, Modules, and Path.
oHandler.Name = "ISAPI-dll"
oHandler.Path="*.dll"
oHandler.Verb="*"
oHandler.Modules="ISAPIModule"
oHandler.ResourceType=0
oHandler.RequireAccess=4
oHandler.AllowPathInfo=True
' Add the handler to the <handlers> section.
oHandlersSection.Add "Handlers", oHandler
' Add a managed handler.
' The required properties are Name, Path, and Type.
Set oHandler = oWebAdmin.Get("HandlerAction").SpawnInstance_
oHandler.Name = "TraceHandler-Integrated"
oHandler.Path="trace.axd"
oHandler.Verb="GET,HEAD,POST"
oHandler.Type="System.Web.Handlers.TraceHandler"
oHandler.PreCondition="integratedMode"
' Add the handler to the <handlers> section.
oHandlersSection.Add "Handlers", oHandler
' Call the WMI Refresh_ method to update the oHandlersSection object variable.
oHandlersSection.Refresh_
' Display the new list of handler names.
WScript.Echo "---[New Handler List]---"
Call DisplayHandlers
' Provide a sub to display the handler names.
Sub DisplayHandlers
For Each oHandler In oHandlersSection.Handlers
WScript.Echo "Name: " & oHandler.Name
Next
WScript.Echo
End Sub
Jerarquía de herencia
HandlerAction
Requisitos
Tipo | Descripción |
---|---|
Remoto | - IIS 7.0 en Windows Vista - IIS 7.5 en Windows 7 - IIS 8.0 en Windows 8 - IIS 10.0 en Windows 10 |
Server | - IIS 7.0 en Windows Server 2008 - IIS 7.5 en Windows Server 2008 R2 - IIS 8.0 en Windows Server 2012 - IIS 8.5 en Windows Server 2012 R2 - IIS 10.0 en Windows Server 2016 |
Producto | - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0 |
Archivo MOF | WebAdministration.mof |
Consulte también
AccessSection (clase)
CollectionElement (clase)
HandlersSection (clase)
IScriptMapInfo::GetAllowPathInfoForScriptMappings (método)