Sdílet prostřednictvím


Invoke-CimMethod

Vyvolá metodu třídy CIM.

Syntax

ClassNameComputerSet (Výchozí)

Invoke-CimMethod
    [-ClassName] <String>
    [[-Arguments] <IDictionary>]
    [-MethodName] <String>
    [-ComputerName <String[]>]
    [-Namespace <String>]
    [-OperationTimeoutSec <UInt32>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ClassNameSessionSet

Invoke-CimMethod
    [-ClassName] <String>
    [[-Arguments] <IDictionary>]
    [-MethodName] <String>
    -CimSession <CimSession[]>
    [-Namespace <String>]
    [-OperationTimeoutSec <UInt32>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ResourceUriSessionSet

Invoke-CimMethod
    [[-Arguments] <IDictionary>]
    [-MethodName] <String>
    -ResourceUri <Uri>
    -CimSession <CimSession[]>
    [-Namespace <String>]
    [-OperationTimeoutSec <UInt32>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

ResourceUriComputerSet

Invoke-CimMethod
    [[-Arguments] <IDictionary>]
    [-MethodName] <String>
    -ResourceUri <Uri>
    [-ComputerName <String[]>]
    [-Namespace <String>]
    [-OperationTimeoutSec <UInt32>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

CimInstanceComputerSet

Invoke-CimMethod
    [-InputObject] <CimInstance>
    [[-Arguments] <IDictionary>]
    [-MethodName] <String>
    [-ResourceUri <Uri>]
    [-ComputerName <String[]>]
    [-OperationTimeoutSec <UInt32>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

CimInstanceSessionSet

Invoke-CimMethod
    [-InputObject] <CimInstance>
    [[-Arguments] <IDictionary>]
    [-MethodName] <String>
    -CimSession <CimSession[]>
    [-ResourceUri <Uri>]
    [-OperationTimeoutSec <UInt32>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

CimClassSessionSet

Invoke-CimMethod
    [-CimClass] <CimClass>
    [[-Arguments] <IDictionary>]
    [-MethodName] <String>
    -CimSession <CimSession[]>
    [-OperationTimeoutSec <UInt32>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

CimClassComputerSet

Invoke-CimMethod
    [-CimClass] <CimClass>
    [[-Arguments] <IDictionary>]
    [-MethodName] <String>
    [-ComputerName <String[]>]
    [-OperationTimeoutSec <UInt32>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

QuerySessionSet

Invoke-CimMethod
    [[-Arguments] <IDictionary>]
    [-MethodName] <String>
    -Query <String>
    -CimSession <CimSession[]>
    [-QueryDialect <String>]
    [-Namespace <String>]
    [-OperationTimeoutSec <UInt32>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

QueryComputerSet

Invoke-CimMethod
    [[-Arguments] <IDictionary>]
    [-MethodName] <String>
    -Query <String>
    [-QueryDialect <String>]
    [-ComputerName <String[]>]
    [-Namespace <String>]
    [-OperationTimeoutSec <UInt32>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

Rutina Invoke-CimMethod vyvolá metodu třídy CIM nebo instance CIM pomocí párů name-value určených parametrem Arguments.

Pokud není zadaný parametr InputObject, rutina funguje jedním z následujících způsobů:

  • Pokud není zadán parametr ComputerName ani parametr CimSession, tato rutina funguje v místní službě WMI (Windows Management Instrumentation) pomocí relace modelu COM (Component Object Model).
  • Pokud je zadán parametr ComputerName nebo parametr CimSession, tato rutina pracuje se serverem CIM určeným parametrem ComputerName nebo parametrem CimSession.

Pokud je zadaný parametr InputObject, rutina funguje jedním z následujících způsobů:

  • Pokud není zadán parametr ComputerName ani parametr CimSession, použije tato rutina ze vstupního objektu relaci CIM nebo název počítače.
  • Pokud je zadaný parametr ComputerName nebo parametr CimSession, použije tato rutina hodnotu parametru CimSession nebo hodnotu parametru ComputerName. Poznámka: To není velmi běžné.

Příklady

Příklad 1: Vyvolání metody

Invoke-CimMethod -Query 'select * from Win32_Process where name like "notepad%"' -MethodName "Terminate"

Tento příkaz vyvolá metodu s názvem Terminate ve třídě CIM s názvem Win32_Process. Třída CIM se načte dotazem "Select * from Win32_Process where name like 'notepad%'".

Příklad 2: Vyvolání metody pomocí objektu instance CIM

$x = Get-CimInstance -Query 'Select * from Win32_Process where name like "notepad%"'
Invoke-CimMethod -InputObject $x -MethodName GetOwner

Tato sada příkazů načte objekt instance CIM a uloží ho do proměnné s názvem $x pomocí rutiny Get-CimInstance. Obsah proměnné se pak použije jako InputObject pro Invoke-CimMethod rutina a GetOwner metoda je vyvolána pro CimInstance.

Příklad 3: Vyvolání statické metody

Invoke-CimMethod -ClassName Win32_Process -MethodName "Create" -Arguments @{ Path = "notepad.exe" }

Tento příkaz vyvolá statickou metodu Create pro třídu s názvem Win32_Process s argumenty zadanými parametrem Arguments.

Příklad 4: Vyvolání metody pomocí argumentů

Invoke-CimMethod -ClassName Win32_Process -MethodName "Create" -Arguments @{ CommandLine = 'notepad.exe'; CurrentDirectory = "C:\windows\system32" }

Tento příkaz vyvolá metodu Create pomocí parametru Arguments.

Příklad 5: Ověřování na straně klienta

$c = Get-CimClass -ClassName Win32_Process
Invoke-CimMethod -CimClass $c -MethodName "xyz" -Arguments @{ CommandLine = 'notepad.exe' }

Tato sada příkazů provádí ověřování na straně klienta pro metodu s názvem xyz předáním objektu CimClass do Invoke-CimMethod rutiny.

Parametry

-Arguments

Určuje parametry, které se mají předat volané metodě. Zadejte hodnoty tohoto parametru jako páry name-value uložené v tabulce hash. Pořadí zadaných hodnot není důležité.

Vlastnosti parametru

Typ:IDictionary
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

(All)
Position:1
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-CimClass

Určuje objekt třídy CIM, který představuje definici třídy CIM na serveru. Tento parametr použijte při vyvolání statické metody třídy.

K načtení definice třídy ze serveru můžete použít rutinu Get-CimClass.

Použití tohoto parametru vede k lepšímu ověření schématu na straně klienta.

Vlastnosti parametru

Typ:CimClass
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

CimClassSessionSet
Position:0
Povinné:True
Hodnota z kanálu:True
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False
CimClassComputerSet
Position:0
Povinné:True
Hodnota z kanálu:True
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-CimSession

Spustí příkaz pomocí zadané relace CIM. Zadejte proměnnou, která obsahuje relaci CIM, nebo příkaz, který vytvoří nebo získá relaci CIM, například New-CimSession nebo Get-CimSession rutiny. Další informace naleznete v části about_CimSessions.

Vlastnosti parametru

Typ:

CimSession[]

Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

ClassNameSessionSet
Position:Named
Povinné:True
Hodnota z kanálu:True
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False
CimInstanceSessionSet
Position:Named
Povinné:True
Hodnota z kanálu:True
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False
CimClassSessionSet
Position:Named
Povinné:True
Hodnota z kanálu:True
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False
QuerySessionSet
Position:Named
Povinné:True
Hodnota z kanálu:True
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-ClassName

Určuje název třídy CIM, pro kterou se má operace provést. Tento parametr se používá pouze pro statické metody. POZNÁMKA: Pomocí dokončování tabulátoru můžete procházet seznam tříd, protože Prostředí Windows PowerShell získá seznam tříd z místního serveru WMI a poskytne seznam názvů tříd.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:Třída

Sady parametrů

ClassNameComputerSet
Position:0
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
ClassNameSessionSet
Position:0
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-ComputerName

Určuje název počítače, na kterém chcete spustit operaci CIM. Můžete zadat plně kvalifikovaný název domény (FQDN), název NetBIOS nebo IP adresu.

Pokud zadáte tento parametr, rutina vytvoří dočasnou relaci k zadanému počítači pomocí protokolu WsMan.

Pokud tento parametr nezadáte, rutina provede operaci na místním počítači pomocí modelu COM (Component Object Model).

Pokud se na stejném počítači provádí více operací, poskytuje připojení pomocí relace CIM lepší výkon.

Vlastnosti parametru

Typ:

String[]

Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:Čína, Název serveru

Sady parametrů

ClassNameComputerSet
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
ResourceUriComputerSet
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
CimClassComputerSet
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
QueryComputerSet
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-Confirm

Před spuštěním cmdletu vás vyzve k potvrzení.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False
Aliasy:viz

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-InputObject

Určuje objekt instance CIM, který se má použít jako vstup pro vyvolání metody.

Tento parametr lze použít pouze k vyvolání metod instance. K vyvolání statických metod třídy použijte parametr Class nebo parametr CimClass.

Vlastnosti parametru

Typ:CimInstance
Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:CimInstance

Sady parametrů

CimInstanceComputerSet
Position:0
Povinné:True
Hodnota z kanálu:True
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False
CimInstanceSessionSet
Position:0
Povinné:True
Hodnota z kanálu:True
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-MethodName

Určuje název metody CIM, která se má vyvolat. Tento parametr je povinný a nesmí být null ani prázdný.

K vyvolání statické metody třídy CIM použijte ClassName nebo CimClass parametr.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:Název

Sady parametrů

(All)
Position:2
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-Namespace

Určuje oblast jmen pro operaci CIM.

Výchozí obor názvů je root/cimv2. Pomocí dokončování tabulátoru můžete procházet seznam oborů názvů, protože PowerShell získá seznam oborů názvů z místního serveru WMI a poskytne seznam oborů názvů.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

ClassNameComputerSet
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
ClassNameSessionSet
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
ResourceUriSessionSet
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
ResourceUriComputerSet
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
QuerySessionSet
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
QueryComputerSet
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-OperationTimeoutSec

Určuje dobu, po kterou cmdlet čeká na odpověď z počítače.

Ve výchozím nastavení je hodnota 0, což znamená, že rutina používá výchozí hodnotu časového limitu pro server..

Pokud je parametr OperationTimeoutSec nastaven na hodnotu menší než robustní časový limit opakování připojení 3 minuty, chyby sítě, které trvaly více než hodnota parametru OperationTimeoutSec, se nedají obnovit, protože operace na serveru vyprší, než se klient může znovu připojit.

Vlastnosti parametru

Typ:UInt32
Default value:None
Podporuje zástupné znaky:False
DontShow:False
Aliasy:OT

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

-Query

Určuje dotaz, který se má spustit na serveru CIM. Metoda je vyvolána na instancích přijatých v důsledku dotazu.

Dialekt dotazu můžete zadat pomocí parametru QueryDialect.

Pokud zadaná hodnota obsahuje dvojité uvozovky ("), jednoduché uvozovky (') nebo zpětné lomítko (\), musíte tyto znaky uvozit předponou zpětného lomítka (\). Pokud zadaná hodnota používá operátor WQL LIKE, musíte uvozit následující znaky tak, že je uzavřete do hranatých závorek ([]): percent (%), podtržítko (_) nebo levá hranatá závorka ([).

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

QuerySessionSet
Position:Named
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
QueryComputerSet
Position:Named
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-QueryDialect

Určuje dotazovací jazyk použitý pro parametr Dotazu. Přijatelné hodnoty pro tento parametr jsou: WQL nebo CQL.

Výchozí hodnota je WQL.

Vlastnosti parametru

Typ:String
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

QuerySessionSet
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
QueryComputerSet
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-ResourceUri

Určuje identifikátor URI (Uniform Resource Identifier) prostředku třídy prostředků nebo instance. Identifikátor URI slouží k identifikaci konkrétního typu prostředku, jako jsou disky nebo procesy, v počítači.

Identifikátor URI se skládá z předpony a cesty k prostředku. Například:

https://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk

http://intel.com/wbem/wscim/1/amt-schema/1/AMT_GeneralSettings

Pokud tento parametr nezadáte, použije se standardní identifikátor URI prostředku DMTF http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/ a název třídy se k němu připojí.

Identifikátor ResourceURI lze použít pouze s relacemi CIM vytvořenými pomocí protokolu WSMan nebo při zadávání parametru ComputerName, který vytvoří relaci CIM pomocí WSManu. Pokud tento parametr zadáte bez zadání parametru ComputerName nebo zadáte relaci CIM vytvořenou pomocí protokolu DCOM, zobrazí se chyba, protože protokol DCOM nepodporuje parametr ResourceURI.

Pokud je zadán parametr ResourceUri i parametr Filter, parametr Filter se ignoruje.

Vlastnosti parametru

Typ:Uri
Default value:None
Podporuje zástupné znaky:False
DontShow:False

Sady parametrů

ResourceUriSessionSet
Position:Named
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False
ResourceUriComputerSet
Position:Named
Povinné:True
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:True
Hodnota ze zbývajících argumentů:False

-WhatIf

Ukazuje, co se stane, když se příkaz spustí. Příkazový modul nebyl spuštěn.

Vlastnosti parametru

Typ:SwitchParameter
Default value:False
Podporuje zástupné znaky:False
DontShow:False
Aliasy:Wi

Sady parametrů

(All)
Position:Named
Povinné:False
Hodnota z kanálu:False
Hodnota z kanálu podle názvu vlastnosti:False
Hodnota ze zbývajících argumentů:False

CommonParameters

Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.

Vstupy

CIM class

Tato rutina přijímá třídu CIM jako vstupní objekt.

CIM instance

Tato rutina přijímá instanci CIM jako vstupní objekt.

Výstupy

PSCustomObject

Tato rutina vrátí objekt.