Sdílet prostřednictvím


Použití knihovny typů skriptování rozhraní WMI

Knihovnu typů skriptování rozhraní WMI můžete použít k volání metod rozhraní WMI Scripting API ze sady Microsoft Visual Studio a v souborech WSF hostitele skriptů systému Windows.

Použití knihovny typů skriptování rozhraní WMI se sadou Microsoft Visual Studio

Poznámka

Funkce Visual InterDev 6.0 byly integrovány do Microsoft Visual Studio .NET.

 

Následující postup popisuje, jak nastavit integrované vývojové prostředí (IDE), aby bylo seznámeno s knihovnou typů WbemScripting.

Přidání knihovny skriptovacího typu rozhraní WMI do odkazů na projekt

  1. V nabídce Project vyberte Přidat odkazy.

  2. Na kartě COM v dialogovém okně Přidat referenci vyberte knihovnu Microsoft WMI Scripting V1.2.

  3. Pokud se v seznamu Odkazy nezobrazí žádná vhodná možnost, přidejte ji pomocí Procházet v poli Odkazy. Procházet otevře pole Přidat odkaz, které umožňuje najít knihovnu typů WbemScripting.

    Knihovna typů WbemScripting se nachází v souboru Wbemdisp.tlb v adresáři %windir%\System32\Wbem.

  4. Vyberte soubor a klikněte na Otevřít. Knihovna Microsoft WMI Scripting V1.2 se zobrazí v seznamu referencí. Ujistěte se, že jste v seznamu vybrali políčko vedle této položky.

Použití knihovny typů skriptování rozhraní WMI s hostitelem skriptů systému Windows 2.0

Můžete zahrnout odkaz na WbemScripting.SWbemLocator v souboru WSF hostitele skriptů systému Windows, na rozdíl od skriptu napsaného v jazyce Visual Basic, Scripting Edition nebo jiných skriptovacích jazycích. Díky tomu můžete místo hodnot používat konstantní názvy. Například při nastavování ověřování použijte WbemAuthenticationLevelPktPrivacy místo hodnoty 6.

Skripty se mohou připojit k rozhraní API skriptování pro knihovnu typů WMI pomocí následujících metod:

  • Určení guid WbemScripting v metodách VBScript CreateObject a GetObject.

    Tím upozorníte hostitele skriptů systému Windows, aby se připojil k sadě objektů rozhraní WMI.

    Následující příklad kódu VBScript vytvoří nový objekt SWbemDateTime.

    Set dateTime = CreateObject("WbemScripting.SWbemDateTime")
    
  • Použití monikerového řetězce "winmgmts:" při získávání nového nebo existujícího objektu.

    Následující příklad kódu VBScript používá moniker "winmgmts:" k získání instance Win32_Process s vlastností Handle 0 (nula). Handle je klíčovou vlastností této třídy.

    Set Process = GetObject("winmgmts:Win32_Process.Handle=0")
    
  • Odkazování na knihovnu typů WMI pomocí referenční značky <> ve formátu souboru WSH 2.0 XML. Pokud použijete značku <odkazu>, musí mít atribut značky uuid, jehož hodnotou je GUID knihovny typů WMI, nebo (doporučeno) atribut objektu, jehož hodnotou je PROGID libovolného skriptovacího objektu WMI, který můžete vytvořit.

    Následující příklad kódu VBScript používá PROGID "WbemScripting" . Pokud chcete skript spustit, uložte text do souboru s příponou .wsf.

    <?xml version="1.0" encoding="US-ASCII"?>
    <job>
    <reference object="WbemScripting.SWbemLocator"/>
    <script language="VBScript">
        set service = GetObject("winmgmts:")
        ' Following line uses a symbolic 
        ' constant from the WMI type library
        service.Security_.impersonationLevel = _
            wbemImpersonationLevelDelegate
    </script>
    </job>
    
  • Vytvořením WMI skriptovacího objektu pomocí tagu objektu <>. Můžete zadat ID atribut s hodnotou názvu, který odkazuje na skriptovací objekt WMI, který chcete vytvořit, a progid atribut roven progid skriptovacího objektu WMI.

    Následující skript WSH zobrazí název hostitele a počet procesorů v místním počítači. Pokud chcete skript spustit, uložte text do souboru s příponou .wsf.

    <?xml version="1.0" encoding="US-ASCII"?>
    <job>
     <object id="objSWbemLocator" progid="WbemScripting.SWbemLocator"/>
     <script language="VBScript">
    
      strComputer = "."
      Set objSWbemServices = objSWbemLocator.ConnectServer(strComputer, "root\cimv2")
      Set colSettings = objSWbemServices.ExecQuery("Select * From Win32_ComputerSystem")
      For Each objComputer in colSettings
       Wscript.Echo "System Name: " & objComputer.Name
       Wscript.Echo "Number of Processors: " & objComputer.NumberOfProcessors
      Next
    
     </script>
    </job>
    

skriptování ve službě WMI

rozhraní API pro skriptování pro rozhraní WMI