Condividi tramite


Uso di WMI

È possibile usare WMI da applicazioni client e script. Fornisce un'infrastruttura che semplifica sia l'individuazione che l'esecuzione di attività di gestione. È inoltre possibile aggiungere al set di possibili attività di gestione creando provider WMI personalizzati.

Nota

La versione successiva di WMI per la scrittura di applicazioni e script è disponibile tramite Windows Management Infrastructure (MI). Per altre informazioni, vedere Provider e client MI.

In questa sezione vengono trattati gli argomenti seguenti:

Recupero di dati da WMI

La procedura seguente descrive come ottenere dati da WMI scrivendo uno script o un'applicazione.

Per ottenere dati da WMI scrivendo uno script o un'applicazione

  1. Decidere quale lingua usare. Per altre informazioni sullo scripting, vedere Creazione di uno script WMI. Per altre informazioni su C++, vedere Creazione di un'applicazione WMI tramite C++. Per altre informazioni su C# o WMI .NET, vedere Panoramica di WMI .NET.

    È possibile visualizzare o modificare i dati WMI in molte lingue. Nella tabella seguente sono elencati gli argomenti che descrivono come usare i linguaggi di scripting e applicazione per ottenere i dati.

Lingua dell'applicazione Argomento
Script scritti nell'hosting di script Microsoft ActiveX, tra cui Visual Basic Scripting Edition (VBScript) e Perl
API di scripting per WMI.
Iniziare con la creazione di uno script WMI.
Per esempi di codice script, vedere Attività WMI per script e applicazioni e il repository di script TechNet ScriptCenter .
Windows PowerShell
Introduzione con Windows PowerShell
Cmdlet di PowerShell WMI, ad esempio Get-WmiObject.
Applicazioni Visual Basic
API di scripting per WMI.
Active Server Pages
API di scripting per WMI.
Iniziare con la creazione di pagine server attive per WMI.
applicazioni C++
API COM per WMI.
Iniziare con La creazione di un'applicazione WMI usando esempi di applicazioni C++ e WMI C++ (contiene esempi).
Applicazioni .NET Framework scritte in C#, Visual Basic .NET o J#
Classi nello spazio dei nomi Microsoft.Management.Infrastructure .
Nota:System.Management è stato lo spazio dei nomi originale che ha coperto il codice gestito per WMI. Tuttavia, la tecnologia sottostante per System.Management è in genere più lenta di e non viene ridimensionata, Microsoft.Management.Infrastructure. Di conseguenza, non è consigliabile usare System.Management per i nuovi progetti. Per altre informazioni su System.Management, vedere Panoramica di WMI .NET.
  1. Assicurarsi che le connessioni ai computer remoti funzionino.

    Per altre informazioni, vedere Connessione a WMI in un computer remoto.

  2. La connessione a WMI nei computer remoti richiede le impostazioni di sicurezza corrette, come illustrato in Gestione della sicurezza WMI. Nella tabella seguente sono elencati gli argomenti che descrivono come configurare le impostazioni di sicurezza con gli script e i linguaggi dell'applicazione.

    Lingua Argomento
    Script in qualsiasi linguaggio, applicazioni Visual Basic
    Impostazione del livello di sicurezza del processo predefinito tramite VBScript
    Active Server Pages
    Configurazione di IIS 5 e versioni successive per script ASP WMI
    C++
    Impostazione del livello di sicurezza del processo predefinito tramite C++ e impostazione della sicurezza in IWbemServices e altri proxy
  3. Dopo la connessione a WMI, è possibile ottenere dati tramite query ed enumerazioni.

    Per altre informazioni, vedere Modifica delle informazioni sulla classe e sull'istanza equery con WQL.

  4. I dati del Registro di sistema sono disponibili tramite WMI ed è possibile creare nuove chiavi e valori o modificare quelli esistenti.

    Per altre informazioni, vedere Modifica del Registro di sistema.

  5. È possibile sottoscrivere le notifiche degli eventi tramite WMI, temporaneamente tra i riavvii del sistema o definitivamente.

    Per altre informazioni, vedere Monitoraggio degli eventi e ricezione di un evento WMI.

  6. I dati del contatore delle prestazioni per un sistema sono disponibili tramite WMI.

    I contatori della libreria delle prestazioni di sistema vengono convertiti in classi WMI. Per altre informazioni, vedere Monitoraggio dei dati sulle prestazioni.

  7. Attività WMI per script e applicazioni descrive come eseguire molte attività amministrative con WMI.

Fornire dati a WMI

La procedura seguente descrive come fornire dati a WMI scrivendo un provider.

Per fornire dati a WMI scrivendo un provider

  • Decidere il tipo di provider da scrivere.

    Non è possibile scrivere un provider WMI in VBScript. Tuttavia, è possibile adottare diversi altri approcci per scrivere un provider COM WMI:

    • Uso della procedura guidata WMI ATL in Visual Studio.

      Questo approccio crea un provider COM non gestito. Per altre informazioni, vedere Aggiunta di un provider di istanze WMI e aggiunta di un provider di eventi WMI.

    • Uso diretto di COM in qualsiasi ambiente di sviluppo integrato.

      Questo approccio crea un provider COM non gestito.

    • Uso di WMI in .NET Framework per creare un provider di codice gestito.

      Questo approccio crea un provider di codice gestito. I provider di codice gestito possono essere scritti in qualsiasi linguaggio .NET Framework, sono più semplici da scrivere rispetto ai provider COM WMI e possono ottenere dati dalle classi basate su CIM WMI, ad esempio classi Win32. Tuttavia, il provider WMI di .NET Framework presenta alcune limitazioni. Per altre informazioni, vedere Gestione delle applicazioni tramite WMI.

    • Non è consigliabile usare le classi del framework del provider .

      Il framework del provider è stato sostituito dalle procedure guidate WMI ATL, usando direttamente o provider .NET Framework. La creazione di un provider COM WMI con le classi del framework del provider non è più consigliata. Nella tabella seguente sono elencati gli argomenti che descrivono come usare provider COM o .NET Framework.

    Provider Argomento
    Provider COM nello stesso processo di WMI
    Fornire dati a WMI
    Provider com disaccoppiato
    Incorporando un provider in un'applicazione
    Provider .NET Framework in C# o Visual Basic.NET
    Gestione delle applicazioni tramite WMI

Attività importanti per WMI

Gli argomenti seguenti forniscono informazioni sull'uso di WMI per monitorare e controllare i componenti aziendali.

Argomento Descrizione
Attività WMI per script e applicazioni
Descrive come trovare la classe e le procedure WMI corrette da usare negli script e nelle applicazioni che eseguono attività comuni di amministrazione del computer e della rete, ad esempio l'aggiunta di una nuova connessione stampante per un computer remoto o la ricerca di tutti gli hotfix installati in un computer.
Creazione di un'applicazione WMI o uno script
Qualsiasi linguaggio di scripting, ad esempio VBScript o Perl, che funziona con oggetti ActiveX può accedere ai dati WMI. Le applicazioni possono accedere a WMI in C++, usando l'API COM per WMI o in Visual Basic, usando lalibreria dei tipi Wbemdisp.tlb e l'API scripting per WMI.
Connessione a WMI in un computer remoto
Descrive come gli script, le applicazioni e i provider possono stabilire connessioni a WMI nei computer remoti per ottenere dati o controllare hardware e software.
Connessione a WMI in un computer remoto tramite Windows PowerShell
Descrive come usare Windows PowerShell per stabilire connessioni a WMI nei computer remoti per ottenere dati o per controllare hardware e software.
Monitoraggio degli eventi
Viene descritto come ottenere notifiche degli eventi creando consumer di eventi WMI temporanei o permanenti.
Fornire dati a WMI
WMI fornisce dati di gestione dinamica agli script client e alle applicazioni ottenendolo dai provider.
Recupero e fornitura di dati in un computer a 64 bit
Viene descritto come accedere a provider non definiti e considerazioni per i writer provider nei sistemi a 64 bit.