Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
U kunt de WMI-scripttypebibliotheek gebruiken om WMI Scripting API-methoden aan te roepen vanuit Microsoft Visual Studio en in WSF-bestanden van Windows Script Host.
De WMI Scripting Type Library gebruiken met Microsoft Visual Studio
Notitie
Visual InterDev 6.0-functies zijn geïntegreerd in Microsoft Visual Studio .NET.
In de volgende procedure wordt beschreven hoe u de IDE (Integrated Development Environment) kunt inschakelen om op de hoogte te zijn van de WbemScripting-typebibliotheek.
De WMI Scripting-typebibliotheek toevoegen aan de projectverwijzingen
Selecteer Verwijzingen toevoegen in het Project-menu .
In het tabblad COM van het vak Verwijzing toevoegen selecteert u Microsoft WMI Scripting V1.2 Library.
Als er geen geschikte optie in de lijst Verwijzingen staat, kunt u deze toevoegen door Bladeren te gebruiken in het vak Verwijzingen. Het Bladeren opent een Verwijzing toevoegen-vak waarmee u de WbemScripting-typebibliotheek kunt vinden.
De WbemScripting-typebibliotheek bevindt zich in het bestand Wbemdisp.tlb in de map %windir%\System32\Wbem.
Selecteer het bestand en klik op openen. Microsoft WMI Scripting V1.2 Library wordt weergegeven in de lijst met verwijzingen. Zorg ervoor dat u het vak naast dit item in de lijst selecteert.
De WMI Scripting Type Library gebruiken met Windows Script Host 2.0
U kunt de verwijzing naar de WbemScripting.SWbemLocator- opnemen in een Windows Script Host WSF-bestand, in tegenstelling tot een script dat is geschreven in Visual Basic, Scripting Edition of andere scripttalen. Hiermee kunt u constante namen gebruiken in plaats van waarden. Gebruik bijvoorbeeld WbemAuthenticationLevelPktPrivacy in plaats van de waarde 6 bij het instellen van verificatie.
Scripts kunnen verbinding maken met de Scripting-API voor WMI-typebibliotheek met behulp van de volgende methoden:
De WbemScripting-GUID opgeven in de VBScript-methoden CreateObject en GetObject.
Hiermee wordt Windows Script Host gewaarschuwd om verbinding te maken met de WMI-objectset.
In het volgende VBScript-codevoorbeeld wordt een nieuw SWbemDateTime--object gemaakt.
Set dateTime = CreateObject("WbemScripting.SWbemDateTime")Gebruik de Moniker-tekenreeks 'winmgmts:' bij het verkrijgen van een nieuw of bestaand object.
In het volgende VBScript-codevoorbeeld wordt de moniker 'winmgmts:' gebruikt om het exemplaar van Win32_Process op te halen met een Handle eigenschap van 0 (nul). Handle is de sleuteleigenschap voor deze klasse.
Set Process = GetObject("winmgmts:Win32_Process.Handle=0")Een referentie naar de WMI-typebibliotheek met behulp van de <verwijzing en de> tag in de WSH 2.0 XML-bestandsindeling. Als u de <verwijzing> tag gebruikt, moet de tag een uuid kenmerk hebben waarvan de waarde de GUID van de WMI-typebibliotheek is, of (aanbevolen) een objectkenmerk met als waarde de PROGID van elk van de WMI-scriptobjecten die u kunt maken.
In het volgende VBScript-codevoorbeeld wordt de PROGID van 'WbemScripting' gebruikt. Als u het script wilt uitvoeren, slaat u de tekst op in een bestand met de extensie .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>Een <object> tag gebruiken om een WMI-scriptobject te maken. U kunt de id kenmerk opgeven met de waarde van een naam die verwijst naar het WMI-scriptobject dat u wilt maken, en het -kenmerk dat gelijk is aan de PROID van het WMI-scriptobject.
In het volgende WSH-script worden de hostnaam en het aantal processors op de lokale computer weergegeven. Als u het script wilt uitvoeren, slaat u de tekst op in een bestand met de extensie .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>
Verwante onderwerpen