Condividi tramite


Creazione di pagine server attive per WMI

Microsoft Active Server Pages (ASP) può creare pagine Web dinamiche includendo script lato server e lato client. Le pagine ASP possono essere molto più veloci rispetto alle pagine HTML client perché la maggior parte del lavoro viene eseguita nel server. È anche possibile usare le pagine ASP per visualizzare informazioni sui computer remoti in altri computer in cui non è installata Strumentazione gestione Windows (WMI).

La procedura seguente descrive come usare WMI con ASP.

Per usare WMI con ASP

  1. Scrivere una pagina ASP (.asp) che usa WMI e inserirla in una directory accessibile al server Web.

    Gli script ASP per WMI possono essere sviluppati con diversi linguaggi di scripting, tra cui VBScript. È possibile costruire la parte dello script WMI di una pagina ASP esattamente come si costruisce qualsiasi altro script che usa WMI, con una restrizione importante: non è possibile usare metodi WMI asincroni all'interno di pagine ASP. Si noti anche che le chiamate a GetObject o CreateObject devono trovarsi nel codice lato server. Per altre informazioni, vedere API di scripting per WMI.

  2. Configurare la configurazione di autenticazione per Internet Information Services (IIS). Per altre informazioni, vedere Configurazione di IIS 5 e versioni successive per lo scripting ASP WMI.

  3. Disabilitare l'accesso anonimo e abilitare l'autenticazione integrata di Windows per il file ASP. È possibile configurare queste impostazioni per la pagina ASP usando lo snap-in IIS che si trova nella cartella strumenti di amministrazione di del pannello di controllo .

Esempio di pagina ASP WMI

L'esempio seguente usa Strumentazione gestione Windows (WMI) in una pagina ASP (Active Server Page) per visualizzare l'indirizzo IP e le impostazioni predefinite del gateway IP per il server da cui viene eseguito questo 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>