Dela via


Använda WMI

Du kan använda WMI från klientprogram och skript. Den tillhandahåller en infrastruktur som gör det enkelt att både identifiera och utföra hanteringsuppgifter. Dessutom kan du lägga till i uppsättningen med möjliga hanteringsuppgifter genom att skapa dina egna WMI-leverantörer.

Anteckning

Nästa generations version av WMI för att skriva program och skript är tillgänglig via Windows Management Infrastructure (MI). Mer information finns i MI-leverantörer och kunder.

Följande avsnitt beskrivs i det här avsnittet:

Hämta data från WMI

Följande procedur beskriver hur du hämtar data från WMI genom att skriva ett skript eller program.

Hämta data från WMI genom att skriva ett skript eller program

  1. Bestäm vilket språk som ska användas. Mer information om skript finns i Skapa ett WMI-skript. Mer information om C++finns i Skapa ett WMI-program med C++. Mer information om C# eller WMI .NET finns i WMI .NET Overview.

    Du kan visa eller ändra WMI-data på många språk. I följande tabell visas de avsnitt som beskriver hur du använder skript- och programspråk för att hämta data.

Programspråk Ämne
Skript skrivna i Microsoft ActiveX-skriptvärd, inklusive Visual Basic Scripting Edition (VBScript) och Perl
Skript-API för WMI.
Börja med Skapa ett WMI-skript.
Exempel på skriptkod finns i WMI-uppgifter för skript och program och TechNet ScriptCenter Script Repository.
Windows PowerShell
Komma igång med Windows PowerShell
WMI PowerShell-cmdletar, till exempel Get-WmiObject.
Visual Basic-applikationer
Skript-API för WMI.
Aktiva serversidor
Skript-API för WMI.
Börja med Skapa aktiva serversidor för WMI.
C++-applikationer
COM-api för WMI.
Börja med Skapa ett WMI-program med C++ och WMI C++-programexempel (innehåller exempel).
.NET Framework-program skrivna i C#, Visual Basic .NET eller J#
Klasser i Microsoft.Management.Infrastructure namnrymd.
Obs!System.Management var det ursprungliga namnområdet som omfattade hanterad kod för WMI. Den underliggande tekniken för System.Management är dock vanligtvis långsammare än och skalas inte lika bra som Microsoft.Management.Infrastructure. Därför rekommenderar vi inte att du använder System.Management- för nya projekt. (Mer information om System.Managementfinns i WMI .NET Overview.)
  1. Se till att dina anslutningar till fjärrdatorer fungerar.

    Mer information finns i Ansluta till WMI på en fjärrdator.

  2. Anslutning till WMI på fjärrdatorer kräver rätt säkerhetsinställningar, enligt beskrivningen i Underhåll av WMI-säkerhet. I följande tabell visas de avsnitt som beskriver hur du konfigurerar säkerhetsinställningar med skript och programspråk.

    Språk Ämne
    Skript på valfritt språk, Visual Basic-program
    ange standardnivån för processsäkerhet med VBScript-
    Aktiva serversidor
    Konfigurera IIS 5 och senare för WMI ASP-skript
    C++
    Ange standardnivån för processsäkerhet med C++ och Ställa in säkerhet på IWbemServices och andra proxyservrar
  3. När du har anslutit till WMI kan du hämta data via frågor och uppräkningar.

    För mer information, se Manipulating Class and Instance Information och Querying with WQL.

  4. Registerdata är tillgängliga via WMI och du kan skapa nya nycklar och värden eller ändra befintliga.

    Mer information finns i Ändra systemregistret.

  5. Du kan prenumerera på händelsemeddelanden via WMI, antingen tillfälligt mellan systemomstarter eller permanent.

    Mer information finns i Övervakningshändelser och Mottagande av en WMI-händelse.

  6. Prestandaräknardata för ett system är tillgängliga via WMI.

    Systemprestandabiblioteksräknarna konverteras till WMI-klasser. Mer information finns i Övervakning av prestandadata.

  7. WMI-uppgifter för skript och program beskriver hur du utför många administrativa uppgifter med WMI.

Tillhandahålla data till WMI

Följande procedur beskriver hur du anger data till WMI genom att skriva en provider.

För att tillhandahålla data till WMI genom att skriva en leverantör

  • Bestäm vilken typ av leverantör som ska anges.

    Du kan inte skriva en WMI-provider i VBScript. Du kan dock använda flera andra metoder för att skriva en WMI COM-provider:

    • Använda WMI ATL-guiden i Visual Studio.

      Den här metoden skapar en ohanterad COM-provider. För mer information, se Lägg till en WMI-instansleverantör och Lägg till en WMI-händelseleverantör.

    • Använda COM direkt i alla integrerade utvecklingsmiljöer.

      Det här tillvägagångssättet skapar en ohanterad COM-leverantör.

    • Använda WMI i .NET Framework för att skapa en hanterad kodleverantör.

      Den här metoden skapar en hanterad kodprovider. Hanterade kodprovidrar kan skrivas på valfritt .NET Framework-språk, är enklare att skriva än WMI COM-leverantörer och kan hämta data från WMI CIM-baserade klasser som Win32-klasser. .NET Framework WMI-providern har dock vissa begränsningar. Mer information finns i Hantera program med WMI-.

    • Användning av -providerramverksklasser rekommenderas inte.

      Providerramverket har ersatts av WMI ATL-verktygen, med hjälp av COM direkt eller .NET Framework-providrar. Det rekommenderas inte längre att skapa en WMI COM-provider med providerramverksklasserna. I följande tabell visas de avsnitt som beskriver hur du använder COM- eller .NET Framework-leverantörer.

    Leverantör Ämne
    COM-provider i samma process som WMI
    Att tillhandahålla data till WMI-
    COM-frikopplad leverantör
    Införliva en leverantör i en applikation
    .NET Framework-provider i C# eller Visual Basic.NET
    Hantera applikationer med WMI

Viktiga uppgifter för WMI

Följande avsnitt innehåller information om hur du använder WMI för att övervaka och kontrollera företagskomponenter.

Ämne Beskrivning
WMI-uppgifter för skript och program
Beskriver hur du hittar rätt WMI-klass och procedurer som ska användas i skript och program som utför vanliga uppgifter för dator- och nätverksadministration, till exempel att lägga till en ny skrivaranslutning för en fjärrdator eller hitta alla installerade snabbkorrigeringar på en dator.
Skapa ett WMI-program eller skript
Alla skriptspråk, till exempel VBScript eller Perl, som fungerar med ActiveX-objekt kan komma åt WMI-data. Program kan komma åt WMI i C++, med hjälp av COM API för WMI eller i Visual Basic, med hjälp av wbemdisp.tlbtypbiblioteket och Scripting API för WMI.
Ansluta till WMI på en fjärrdator
Beskriver hur skript, program och leverantörer kan upprätta anslutningar till WMI på fjärrdatorer för att hämta data eller styra maskinvara och programvara.
Ansluta till WMI på en fjärrdator med Hjälp av Windows PowerShell
Beskriver hur du använder Windows PowerShell för att upprätta anslutningar till WMI på fjärrdatorer för att hämta data eller för att styra maskinvara och programvara.
Övervakningshändelser
Beskriver hur man får händelsemeddelanden genom att skapa tillfälliga eller permanenta WMI-händelsekonsumenter.
Att tillhandahålla data till WMI-
WMI levererar dynamiska hanteringsdata till klientskript och program genom att hämta dem från leverantörer.
Hämta och tillhandahålla data på en 64-bitars dator
Beskriver hur du får åtkomst till icke-standardleverantörer och överväganden för leverantörsförfattare i 64-bitarsystem.