InParameters-objecten maken
Een InParameters-object bevat de lijst met parameters voor het aanroepen van providermethoden bij het gebruik van een ExecMethod type aanroep. De SWbemObject.ExecMethod_, SWbemObject.ExecMethodAsync_, SWbemServices.ExecMethod-en SWbemServices.ExecMethodAsync-methoden vereisen allemaal een InParameters-object.
In de volgende procedure wordt beschreven hoe u een InParameters--object maakt.
De objwbemInParams parameter construeren
Verbinding maken met WMI.
Haal de definitie op van de WMI-klasse die de methode definieert die u wilt uitvoeren.
Haal een InParameters-object op dat specifiek is voor de WMI-klassemethode die u wilt uitvoeren.
Set objInParam = objShare.Methods_("Create"). _ inParameters.SpawnInstance_()
Stel de eigenschappen van het exemplaar in op de waarden die van toepassing zijn. Zorg ervoor dat u waarden geeft aan de sleuteleigenschappen in de WMI-klasse die de methode bevat die u wilt uitvoeren.
Als u bijvoorbeeld een invoerparameter met de naam myinputparam wilt instellen op de waarde 'abc' in een exemplaar van InParameters met de naam 'INST', ziet de code er als volgt uit.
INST.Properties_.Add ("myinputparam").Value = "abc".
Voer de methode uit en haal de retourstatus op van de methode die u uitvoert.
Het volgende codevoorbeeld illustreert het instellen van het InParameters-object om een nieuw WMI-object te maken dat een share vertegenwoordigt. Voor meer informatie over het OutParameters-object, zie Parsing OutParameters Objects. In dit voorbeeld wordt een geslaagde retourwaarde (0) geretourneerd als er een map met de naam 'Delen' op de locatie C:/Share staat. In dit voorbeeld kan deze map worden gedeeld met andere gebruikers.
' Connect to WMI.
Set objServices = GetObject("winmgmts:root\cimv2")
' Obtain the definition of the WMI class that defines
' the method you want to execute.
Set objShare = objServices.Get("Win32_Share")
' Obtain an InParameters object specific
' to the WMI class method you want to execute.
Set objInParam = objShare.Methods_("Create"). _
inParameters.SpawnInstance_()
' Set the properties of the instance to whatever
' values are appropriate.
objInParam.Properties_.Item("Access") = objSecDescriptor
objInParam.Properties_.Item("Description") = _
"New share created by WMI script"
objInParam.Properties_.Item("Name") = "share"
objInParam.Properties_.Item("Path") = "C:\share"
objInParam.Properties_.Item("Type") = 0
'optional - default is 'max allowed'
objInParam.Properties_.Item("MaximumAllowed") = 100
'optional - default is no password
objInParam.Properties_.Item("Password") = "Password"
' Execute the method and obtain the return status.
' The OutParameters object in objOutParams
' is created by the provider.
Set objOutParams = objShare.ExecMethod_("Create", objInParam)
wscript.echo objOutParams.ReturnValue