Úlohy služby WMI: Registr
Úlohy rozhraní WMI pro registr vytvářejí a upravují klíče a hodnoty registru. Další příklady najdete na webu TechNet ScriptCenter na https://www.microsoft.com/technet.
Příklady skriptů uvedené v tomto tématu získávají data pouze z místního počítače. Další informace o tom, jak pomocí skriptu získat data ze vzdálených počítačů, naleznete v tématu Připojení k rozhraní WMI na vzdáleném počítači.
Následující postup popisuje, jak spustit skript.
Spuštění skriptu
- Zkopírujte kód a uložte ho do souboru s příponou .vbs, například název_souboru.vbs. Ujistěte se, že textový editor nepřidá do souboru .txt příponu.
- Otevřete okno příkazového řádku a přejděte do adresáře, do kterého jste soubor uložili.
- Na příkazovém řádku zadejte cscript filename.vbs.
- Pokud nemáte přístup k protokolu událostí, zkontrolujte, jestli používáte příkazový řádek se zvýšenými oprávněními. Některé protokoly událostí, jako je protokol událostí zabezpečení, můžou být chráněné řízením uživatelských přístupů (UAC).
Poznámka
Ve výchozím nastavení cscript zobrazí výstup skriptu v okně příkazového řádku. Vzhledem k tomu, že skripty rozhraní WMI můžou vytvářet velké objemy výstupu, můžete chtít výstup přesměrovat na soubor. Na příkazovém řádku zadejte cscript filename.vbs > outfile.txt a přesměrujte výstup skriptu název_souboru.vbs do outfile.txt.
Následující tabulka uvádí příklady skriptů, které lze použít k získání různých typů dat z místního počítače.
Jak můžu... | Třídy nebo metody služby WMI | ||||||||
---|---|---|---|---|---|---|---|---|---|
... čtení hodnot klíčů registru pomocí rozhraní WMI? | Použijte třídu StdRegProv umístěnou v kořenovém\výchozím oboru názvů. Nelze získat žádné instance této třídy, protože Poskytovatel systémového registru je pouze metoda a zprostředkovatel událostí. Data registru však můžete získat prostřednictvím metod, jako je EnumKey nebo EnumValue.
Win32_Registry, umístěný v kořenovém\cimv2 oboru názvů, získá data o registru jako celku, například jak velká je.
|
||||||||
... vytvořit nový klíč registru? | Použijte třídu StdRegProv umístěnou v oboru názvů root\default a metodu CreateKey.
|
||||||||
... vytvořit novou hodnotu registru pod klíčem? | Použijte třídu StdRegProv umístěnou v kořenovém\výchozím oboru názvů a metodu CreateKey. Pak použijte jednu z metod Set v závislosti na tom, jaký typ registru je hodnota, například SetDWORDValue. Metody Set vytvoří hodnotu, pokud ještě neexistuje. Další informace naleznete v tématu Mapování datového typu registru na datový typ rozhraní WMI.
|
||||||||
... Při pokusu o zápis skriptu pro čtení registru se vyhnete chybě Neplatné třídy? | Při přístupu ke třídě StdRegProv použijte kořenový\výchozí obor názvů. stdRegProv není součástí oboru názvů cimv2, což je důvod, proč se vygeneruje chyba Neplatná třída, pokud se pokusíte připojit ke kořenové\cimv2:StdRegProv.
|
||||||||
... zkontrolujte zabezpečení konkrétního klíče registru? | Použijte třídu StdRegProv umístěnou v oboru názvů root\default a metodu CheckAccess. Přístupová práva můžete zkontrolovat pouze pro aktuálního uživatele, který spouští skript nebo aplikaci. Přístupová práva pro jiného zadaného uživatele nelze zkontrolovat. |
||||||||
... čtení a zápis hodnot binárního registru? | Použijte třídu StdRegProv umístěnou v oboru názvů Root\Default a GetBinaryValue a Metody SetBinaryValue. Hodnoty registru, které se zobrazují v nástroji RegEdt32 jako řada šestnáctkových hodnot bajtů, jsou ve formátu dat REG_BINARY. Další informace naleznete v tématu Mapování datového typu registru na datový typ rozhraní WMI. Následující příklad kódu VBScript vytvoří nový klíč s binární hodnotou. Binární hodnota je zadána v iValues bajtové pole zadané v hex.
Následující skript přečte binární hodnotu.
|
||||||||
... Čtení a zápis hodnot registru, které obsahují více řetězců? | Použijte třídu StdRegProv umístěnou v oboru názvů root\default a metody GetMultiStringValue a SetMultiStringValue metody. Klíče registru, které se zobrazují v nástroji RegEdt32 jako řada řetězců oddělených mezerami, jsou ve REG_MULTI_SZ datovém formátu. Další informace naleznete v tématu Mapování datového typu registru na datový typ rozhraní WMI. Následující příklad kódu VBScript vytvoří nový klíč a novou hodnotu víceřetězení.
Následující skript přečte hodnotu s víceřetěžci.
|
||||||||
... odebrat klíč registru? | Použijte třídu StdRegProv umístěnou v oboru názvů root\default a metody DeleteKey.
|
Související témata
-
úpravy systémového registru