Creación de páginas de Active Server para WMI

Páginas de Active Server (ASP) de Microsoft puede crear páginas web dinámicas mediante la inclusión de scripts del lado servidor y del lado cliente. Las páginas ASP pueden ser mucho más rápidas que las páginas HTML de cliente porque la mayoría del trabajo se realiza en el servidor. También puede usar páginas ASP para mostrar información sobre los equipos remotos a otros equipos que no tienen instalado Instrumental de administración de Windows (WMI).

En este procedimiento se describe cómo usar WMI con ASP.

Procedimientos para usar WMI con ASP

  1. Escriba una página ASP (.asp) que use WMI y colóquela en un directorio accesible para el servidor web.

    Los scripts ASP para WMI se pueden desarrollar con varios lenguajes de scripting, incluido VBScript. Puede construir la parte del script WMI de una página ASP exactamente como construye cualquier otro script que use WMI, aunque hay una restricción importante: no puede usar métodos WMI asincrónicos en páginas ASP. Tenga en cuenta también que las llamadas a GetObject o CreateObject deben estar en el código del lado servidor. Para obtener más información, vea API de scripting para WMI.

  2. Establezca la configuración de autenticación para Internet Information Services (IIS). Para obtener más información, vea Configuración de IIS 5.0 y versiones posteriores para scripting ASP de WMI.

  3. Deshabilite el acceso anónimo y habilite la autenticación integrada de Windows para el archivo ASP. Puede configurar estas opciones para la página ASP mediante el complemento IIS ubicado en la carpeta Herramientas administrativas de la Panel de control.

Ejemplo de página ASP de WMI

En este ejemplo se usa Instrumental de administración de Windows (WMI) dentro de una página de Active Server (ASP) para mostrar la dirección IP y la configuración predeterminada de la puerta de enlace IP para el servidor desde el que se ejecuta este script.

<%@ LANGUAGE="VBSCRIPT"%>
<HTML>
<HEAD>
<TITLE>WMI ASP Example:
    Read Default Gateway and IP Address information </TITLE>
</HEAD>

<BODY>

<%
On Error Resume Next
set IPConfigSet = GetObject("winmgmts:" _
   & "{impersonationLevel=impersonate}!root\cimv2").ExecQuery" _
    & "("SELECT IPAddress, DefaultIPGateway "" _ 
    & " FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled=TRUE")
%>

<%If Err <> 0 Then %>
    <%if err.number = -2147217405 then%>
        <p>Error 0x80041003: Access Denied: 
           Check permissions and file security for this ASP file.</p>
    <%else%>
        <p>Error description: <%=Err.description%> 
           error number <%=Err.number%></p>
    <%end if%>

<%end if %>

<%for each IPConfig in IPConfigSet%>

    <%if Not IsNull(IPConfig.IPAddress) then %>
        <%for i=LBound(IPConfig.IPAddress) 
            to UBound(IPConfig.IPAddress)%>
            <p>IP Address: <%=IPConfig.IPAddress(i)%></p>
        <%next%>
    <%end if%>
    

    <%if Not IsNull(IPConfig.DefaultIPGateway) then %>
        <%for i=LBound(IPConfig.DefaultIPGateway) 
            to UBound(IPConfig.DefaultIPGateway)%>
            <p>Default IP Gateway: 
                <%=IPConfig.DefaultIPGateway(i)%></p>
        <%next%>
    <%end if%>
<%next%>

<%If Err <> 0 Then %>
    <p>error description: <%=Err.description%> 
       error number <%=Err.number%></p>
<%end if %>

</BODY>
</HTML>