Invoke-CimMethod
Anropar en metod för en CIM-klass.
Syntax
Invoke-CimMethod
[-ClassName] <String>
[-ComputerName <String[]>]
[[-Arguments] <IDictionary>]
[-MethodName] <String>
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-CimMethod
[-ClassName] <String>
-CimSession <CimSession[]>
[[-Arguments] <IDictionary>]
[-MethodName] <String>
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-CimMethod
-ResourceUri <Uri>
[-ComputerName <String[]>]
[[-Arguments] <IDictionary>]
[-MethodName] <String>
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-CimMethod
[-ResourceUri <Uri>]
[-InputObject] <CimInstance>
-CimSession <CimSession[]>
[[-Arguments] <IDictionary>]
[-MethodName] <String>
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-CimMethod
[-ResourceUri <Uri>]
[-InputObject] <CimInstance>
[-ComputerName <String[]>]
[[-Arguments] <IDictionary>]
[-MethodName] <String>
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-CimMethod
-ResourceUri <Uri>
-CimSession <CimSession[]>
[[-Arguments] <IDictionary>]
[-MethodName] <String>
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-CimMethod
[-CimClass] <CimClass>
[-ComputerName <String[]>]
[[-Arguments] <IDictionary>]
[-MethodName] <String>
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-CimMethod
[-CimClass] <CimClass>
-CimSession <CimSession[]>
[[-Arguments] <IDictionary>]
[-MethodName] <String>
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-CimMethod
-Query <String>
[-QueryDialect <String>]
[-ComputerName <String[]>]
[[-Arguments] <IDictionary>]
[-MethodName] <String>
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-CimMethod
-Query <String>
[-QueryDialect <String>]
-CimSession <CimSession[]>
[[-Arguments] <IDictionary>]
[-MethodName] <String>
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Den här cmdleten är endast tillgänglig på Windows-plattformen.
Cmdleten Invoke-CimMethod anropar en metod för en CIM-klass eller CIM-instans med hjälp av de namn/värde-par som anges av parametern Argument .
Om parametern InputObject inte anges fungerar cmdleten på något av följande sätt:
- Om varken parametern ComputerName eller CimSession-parametern anges fungerar den här cmdleten på den lokala WMI-sessionen (Windows Management Instrumentation) med hjälp av en COM-session (Component Object Model).
- Om parametern ComputerName eller parametern CimSession anges fungerar den här cmdleten mot CIM-servern som anges av parametern ComputerName eller parametern CimSession .
Om parametern InputObject anges fungerar cmdleten på något av följande sätt:
- Om varken parametern ComputerName eller CimSession-parametern har angetts använder den här cmdleten CIM-sessionen eller datornamnet från indataobjektet.
- Om parametern ComputerName eller parametern CimSession anges använder den här cmdleten antingen parametervärdet CimSession eller parametervärdet ComputerName . Det här är inte ett vanligt scenario.
Exempel
Exempel 1: Anropa en metod
Det här exemplet anropar metoden Avsluta för klassen Win32_Process .
Invoke-CimMethod -Query 'select * from Win32_Process where name like "notepad%"' -MethodName "Terminate"
Exempel 2: Anropa en metod med CIM-instansobjekt
Det här exemplet hämtar CIM-instansobjektet och lagrar det i en variabel med namnet $x med hjälp av cmdleten Get-CimInstance . Innehållet i variabeln används sedan som InputObject för cmdleten Invoke-CimMethod . GetOwner-metoden anropas för CimInstance.
$x = Get-CimInstance -Query 'Select * from Win32_Process where name like "notepad%"'
Invoke-CimMethod -InputObject $x -MethodName GetOwner
Exempel 3: Anropa en statisk metod med argument
Det här exemplet anropar metoden Skapa med namnet med parametern Argument .
Invoke-CimMethod -ClassName Win32_Process -MethodName "Create" -Arguments @{
CommandLine = 'notepad.exe'; CurrentDirectory = "C:\windows\system32"
}
Exempel 4: Validering på klientsidan
Det här exemplet utför validering på klientsidan för xyz-metoden genom att skicka ett CimClass-objekt till Invoke-CimMethod.
$c = Get-CimClass -ClassName Win32_Process
Invoke-CimMethod -CimClass $c -MethodName "xyz" -Arguments @{ CommandLine = 'notepad.exe' }
Parametrar
Anger vilka parametrar som ska skickas till den anropade metoden. Ange värdena för den här parametern som namn/värde-par som lagras i en hash-tabell. Ordningen på de angivna värdena är inte viktig.
| Type: | IDictionary |
| Position: | 1 |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Anger ett CIM-klassobjekt som representerar en CIM-klassdefinition på servern. Använd den här parametern när du anropar en statisk metod för en klass.
Du kan använda cmdleten Get-CimClass för att hämta en klassdefinition från servern.
Om du använder den här parametern får du bättre schemavalidering på klientsidan.
| Type: | CimClass |
| Position: | 0 |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Kör kommandot med den angivna CIM-sessionen. Ange en variabel som innehåller CIM-sessionen eller ett kommando som skapar eller hämtar CIM-sessionen, till exempel New-CimSession cmdletarna eller Get-CimSession . Mer information finns i about_CimSession.
| Type: | CimSession[] |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Anger namnet på den CIM-klass som åtgärden ska utföras för. Den här parametern används endast för statiska metoder. Du kan använda tabbslut för att bläddra i listan över klasser eftersom PowerShell hämtar en lista över klasser från den lokala WMI-servern för att tillhandahålla en lista med klassnamn.
| Type: | String |
| Aliases: | Class |
| Position: | 0 |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Anger namnet på den dator där du vill köra CIM-åtgärden. Du kan ange ett fullständigt kvalificerat domännamn (FQDN), ett NetBIOS-namn eller en IP-adress.
När du använder den här parametern skapar cmdleten en tillfällig session på den angivna datorn med hjälp av WsMan-protokollet. Annars utför cmdleten åtgärden på den lokala datorn med hjälp av Komponentobjektmodell (COM).
Anslut med en CIM-session för bättre prestanda när flera åtgärder utförs på samma dator.
| Type: | String[] |
| Aliases: | CN, ServerName |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Uppmanar dig att bekräfta innan du kör cmdleten.
| Type: | SwitchParameter |
| Aliases: | cf |
| Position: | Named |
| Default value: | False |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Anger ett CIM-instansobjekt som ska användas som indata för att anropa en metod. Den här parametern kan bara användas för att anropa instansmetoder. Om du vill anropa statiska klassmetoder använder du parametern Class eller parametern CimClass .
| Type: | CimInstance |
| Aliases: | CimInstance |
| Position: | 0 |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Anger namnet på den CIM-metod som ska anropas. Den här parametern är obligatorisk och får inte vara null eller tom. Om du vill anropa statisk metod för en CIM-klass använder du parametern ClassName eller CimClass .
| Type: | String |
| Aliases: | Name |
| Position: | 2 |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Anger namnområdet för CIM-åtgärden. Standardnamnområdet är root/cimv2. Du kan använda tabbavslut för att bläddra i listan över namnområden eftersom PowerShell hämtar en lista över namnområden från den lokala WMI-servern för att ange listan över namnområden.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Anger hur lång tid cmdleten väntar på ett svar från datorn. Som standard är värdet 0, vilket innebär att cmdleten använder standardvärdet för timeout för servern.
Om parametern OperationTimeoutSec är inställd på ett värde som är mindre än tidsgränsen för återförsök av standardanslutning på 3 minuter kan nätverksfel som varar mer än värdet för parametern OperationTimeoutSec inte återställas.
| Type: | UInt32 |
| Aliases: | OT |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Anger en fråga som ska köras på CIM-servern. En metod anropas på de instanser som tas emot som ett resultat av frågan. Du kan ange frågedialekten med parametern QueryDialect .
Om det angivna värdet innehåller dubbla citattecken ("), enkla citattecken (') eller ett omvänt snedstreck (\) måste du undvika dessa tecken genom att prefixera dem med omvänt snedstreck (\). Om det angivna värdet använder WQL LIKE-operatorn måste du undvika följande tecken genom att omsluta dem inom hakparenteser (): procent ([]%), understreck (_) eller inledande hakparentes ([).
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Anger det frågespråk som används för frågeparametern. Godkända värden för den här parametern är: WQL eller CQL.
Standardvärdet är WQL.
| Type: | String |
| Position: | Named |
| Default value: | WQL |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Anger resursens enhetliga resursidentifierare (URI) för resursklassen eller instansen. URI:n används för att identifiera en specifik typ av resurs, till exempel diskar eller processer, på en dator.
En URI består av ett prefix och en sökväg till en resurs. Exempel:
http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
http://intel.com/wbem/wscim/1/amt-schema/1/AMT_GeneralSettings
Om du inte anger den här parametern används standardresurs-URI http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/ :n för DMTF som standard och klassnamnet läggs till i den.
ResourceURI kan bara användas med CIM-sessioner som skapats med hjälp av WSMan-protokollet, eller när du anger parametern ComputerName , som skapar en CIM-session med WSMan.
När du anger den här parametern utan att ange parametern ComputerName , eller när du anger en CIM-session som skapats med DCOM-protokollet, får du ett fel. DCOM-protokollet stöder inte ResourceURI-parametern .
Om både ResourceUri-parametern och filterparametern anges ignoreras filterparametern.
| Type: | Uri |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | True |
| Accept wildcard characters: | False |
Visar vad som skulle hända om cmdleten kördes. Cmdleten körs inte.
| Type: | SwitchParameter |
| Aliases: | wi |
| Position: | Named |
| Default value: | False |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Indata
CIM class
Den här cmdleten accepterar en CIM-klass som ett indataobjekt.
CIM instance
Den här cmdleten accepterar en CIM-instans som indataobjekt.
Utdata
Den här cmdleten returnerar ett objekt.
Relaterade länkar
Feedback
Skicka och visa feedback för