Invoke-WmiMethod
WMI-metódusokat hív meg.
Syntax
Invoke-WmiMethod
[-Class] <String>
[-Name] <String>
[-ArgumentList <Object[]>]
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-WmiMethod
-InputObject <ManagementObject>
[-Name] <String>
[-ArgumentList <Object[]>]
[-AsJob]
[-ThrottleLimit <Int32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-WmiMethod
-Path <String>
[-Name] <String>
[-ArgumentList <Object[]>]
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-WmiMethod
[-Name] <String>
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-WmiMethod
[-Name] <String>
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Invoke-WmiMethod
[-Name] <String>
[-AsJob]
[-Impersonation <ImpersonationLevel>]
[-Authentication <AuthenticationLevel>]
[-Locale <String>]
[-EnableAllPrivileges]
[-Authority <String>]
[-Credential <PSCredential>]
[-ThrottleLimit <Int32>]
[-ComputerName <String[]>]
[-Namespace <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
A Invoke-WmiMethod
parancsmag meghívja a Windows Management Instrumentation (WMI) objektumok metódusait.
A Windows PowerShell 3.0-ban bevezetett új Common Information Model (CIM) parancsmagok ugyanazokat a feladatokat hajtják végre, mint a WMI-parancsmagok. A CIM-parancsmagok megfelelnek a WS-Management (WSMan) szabványnak és a CIM szabványnak, amely lehetővé teszi, hogy a parancsmagok ugyanazokat a technikákat használják a Windows rendszerű számítógépek és más operációs rendszereket futtató számítógépek kezelésére. A használat Invoke-WmiMethod
helyett fontolja meg az Invoke-CimMethod használatát.
Példák
1. példa: A WMI-metódus paramétereinek kötelező sorrendje
Ez a parancs felsorolja az objektumok szükséges sorrendjét.
Get-WmiObject Win32_Volume |
Get-Member -MemberType Method -Name Format |
Select-Object -ExpandProperty Definition
System.Management.ManagementBaseObject Format(System.String FileSystem, System.Boolean QuickFormat,
System.UInt32 ClusterSize, System.String Label, System.Boolean EnableCompression,
System.UInt32 Version)
A WMI Meghívása a PowerShell 3.0-ban eltér a másodlagos módszerektől, és megköveteli, hogy az objektumértékek megadott sorrendben legyenek megadva.
2. példa: Alkalmazáspéldány indítása
([Wmiclass]'Win32_Process').Create.OverloadDefinitions
System.Management.ManagementBaseObject Create(System.String CommandLine, System.String CurrentDirectory,
System.Management.ManagementObject#Win32_ProcessStartup ProcessStartupInformation)
Invoke-WmiMethod -Path Win32_Process -Name Create -ArgumentList C:\Windows\system32\notepad.exe
__GENUS : 2
__CLASS : __PARAMETERS
__SUPERCLASS :
__DYNASTY : __PARAMETERS
__RELPATH :
__PROPERTY_COUNT : 2
__DERIVATION : {}
__SERVER :
__NAMESPACE :
__PATH :
ProcessId : 11312
ReturnValue : 0
PSComputerName :
Ez a parancs elindítja a Jegyzettömb egy példányát a Create
Win32_Process osztály metódusának meghívásával.
A ReturnValue tulajdonság 0
egy, a ProcessId tulajdonság pedig egész számmal (a következő folyamatazonosító számmal) van feltöltve, ha a parancs befejeződött.
3. példa: Fájl átnevezése
$invokeWmiMethodSplat = @{
Path = "CIM_DataFile.Name='C:\scripts\test.txt'"
Name = 'Rename'
ArgumentList = 'C:\scripts\test_bu.txt'
}
Invoke-WmiMethod @invokeWmiMethodSplat
__GENUS : 2
__CLASS : __PARAMETERS
__SUPERCLASS :
__DYNASTY : __PARAMETERS
__RELPATH :
__PROPERTY_COUNT : 1
__DERIVATION : {}
__SERVER :
__NAMESPACE :
__PATH :
ReturnValue : 0
Ez a parancs átnevez egy fájlt. A Path paraméter használatával hivatkozik a CIM_DataFile osztály egy példányára. Ezután alkalmazza az Átnevezés metódust az adott példányra.
A ReturnValue tulajdonság ki van töltve a 0
parancs befejeződése esetén.
4. példa: Értéktömb átadása "-ArgumentList" használatával
Példa egy objektumtömbre $binSD
, majd egy értékre $null
.
$acl = Get-Acl test.txt
$binSD = $acl.GetSecurityDescriptorBinaryForm()
$invokeWmiMethodSplat = @{
Class = 'Win32_SecurityDescriptorHelper'
Name = 'BinarySDToSDDL'
ArgumentList = $binSD, $null
}
Invoke-WmiMethod @invokeWmiMethodSplat
Paraméterek
-ArgumentList
Megadja azokat a paramétereket, amelyeket át kell adni a hívott metódusnak. A paraméter értékének objektumtömbnek kell lennie, és azoknak az úgynevezett metódus által megkövetelt sorrendben kell megjelenniük. A Invoke-CimCommand
parancsmag nem rendelkezik ezekkel a korlátozásokkal.
Az objektumok listázási sorrendjének meghatározásához futtassa a metódust a GetMethodParameters()
WMI-osztályban, ahogyan az az 1. példában látható, a témakör végén.
Fontos
Ha az első érték egynél több elemet tartalmazó tömb, akkor a második értékre $null
van szükség. Ellenkező esetben a parancs hibát okoz, például Unable to cast object of type 'System.Byte' to type 'System.Array'.
. Lásd a fenti 4. példát.
Type: | Object[] |
Aliases: | Args |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AsJob
Azt jelzi, hogy ez a parancsmag háttérfeladatként futtatja a parancsot. Ezzel a paraméterrel olyan parancsokat futtathat, amelyek végrehajtása hosszú időt vesz igénybe.
Az AsJob paraméter használatakor a parancs egy olyan objektumot ad vissza, amely a háttérfeladatot jelöli, majd megjeleníti a parancssort. Folytathatja a munkát a munkamenetben, amíg a feladat befejeződik. Ha Invoke-WmiMethod
távoli számítógépen használják, a feladat a helyi számítógépen jön létre, és a távoli számítógépek eredményei automatikusan visszakerülnek a helyi számítógépre. A feladat kezeléséhez használja a főnevet (a Feladat parancsmagokat) tartalmazó Job
parancsmagokat. A feladat eredményeinek lekéréséhez használja a Receive-Job
parancsmagot.
Ha ezt a paramétert távoli számítógépekkel szeretné használni, a helyi és a távoli számítógépeket újra kell konfigurálni az újraegyezéshez. Emellett a Windows Vista és a Windows újabb verzióiban a Futtatás rendszergazdaként lehetőséggel kell elindítania a Windows PowerShellt. További információ: about_Remote_Requirements.
További információ a Windows PowerShell háttérfeladatairól: about_Jobs és about_Remote_Jobs.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Authentication
Megadja a WMI-kapcsolathoz használandó hitelesítési szintet. A paraméter elfogadható értékei a következők:
-1
: Változatlan0
: Alapértelmezett1
: Nincs (Nincs hitelesítés végrehajtva.)2
: Csatlakozás (A hitelesítés csak akkor történik, ha az ügyfél kapcsolatot létesít az alkalmazással.)3
: Hívás (A hitelesítés csak az egyes hívások elején történik, amikor az alkalmazás megkapja a kérést.)4
: Csomag (A hitelesítés az ügyféltől kapott összes adaton történik.)5
: PacketIntegrity (Az ügyfél és az alkalmazás között továbbított összes adat hitelesítése és ellenőrzése.)6
: PacketPrivacy (A rendszer a többi hitelesítési szint tulajdonságait használja, és az összes adat titkosítva van.)
Type: | AuthenticationLevel |
Accepted values: | Default, None, Connect, Call, Packet, PacketIntegrity, PacketPrivacy, Unchanged |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Authority
Megadja a WMI-kapcsolat hitelesítéséhez használni kívánt szolgáltatót. Megadhat standard Windows NT LAN Manager (NTLM) vagy Kerberos-hitelesítést. Az NTLM használatához állítsa be a szolgáltatói beállítást ntlmdomain:<DomainName>
, ahol <DomainName>
érvényes NTLM-tartománynevet azonosít. A Kerberos használatához adja meg a .kerberos:<DomainName>\<ServerName>
A helyi számítógéphez való csatlakozáskor nem vehet fel szolgáltatói beállítást.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Class
Megadja a meghívandó statikus metódust tartalmazó WMI-osztályt.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ComputerName
Sztringtömbként megadja, hogy a parancsmag mely számítógépeken futtatja a parancsot. Alapértelmezés szerint a helyi számítógép.
Írja be egy vagy több számítógép NetBIOS-nevét, IP-címét vagy teljes tartománynevét. A helyi számítógép megadásához írja be a számítógép nevét, egy pont (.
) vagy localhost
.
Ez a paraméter nem támaszkodik a Windows PowerShell-újraegyezésre. Akkor is használhatja a ComputerName paramétert, ha a számítógép nincs távoli parancsok futtatására konfigurálva.
Type: | String[] |
Aliases: | Cn |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Jóváhagyást kér a parancsmag futtatása előtt.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
A művelet végrehajtásához engedéllyel rendelkező felhasználói fiókot ad meg. Alapértelmezés szerint az aktuális felhasználó. Írjon be egy felhasználónevet, például User01
: , Domain01\User01
vagy User@Contoso.com
. Vagy írjon be egy PSCredential objektumot, például egy olyan objektumot, amelyet a Get-Credential
parancsmag ad vissza. Amikor beír egy felhasználónevet, a rendszer kérni fogja a jelszót.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EnableAllPrivileges
Azt jelzi, hogy ez a parancsmag engedélyezi az aktuális felhasználó összes jogosultságát, mielőtt a parancs meghívja a WMI-hívást.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Impersonation
Megadja a használni kívánt megszemélyesítési szintet. A paraméter elfogadható értékei a következők:
0
: Alapértelmezett (Beolvassa a helyi beállításjegyzéket az alapértelmezett megszemélyesítési szinthez, amely általában a következőre3
van állítva: Megszemélyesítés.)1
: Névtelen (Elrejti a hívó hitelesítő adatait.)2
: Azonosítás (Lehetővé teszi az objektumok számára a hívó hitelesítő adatainak lekérdezését.)3
: Megszemélyesítés (Lehetővé teszi, hogy az objektumok a hívó hitelesítő adatait használják.)4
: Delegálás (Lehetővé teszi, hogy az objektumok más objektumok számára is lehetővé tegyék a hívó hitelesítő adatainak használatát.)
Type: | ImpersonationLevel |
Accepted values: | Default, Anonymous, Identify, Impersonate, Delegate |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
A bemenetként használni kívánt ManagementObject objektumot adja meg. Ha ezt a paramétert használja, a Jelölő és az Argumentum paraméter kivételével az összes többi paraméter figyelmen kívül lesz hagyva.
Type: | ManagementObject |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Locale
A WMI-objektumok előnyben részesített területi beállítását adja meg. Adja meg a Területi beállítás paraméter értékét tömbként az MS_<LCID>
előnyben részesített sorrendben megadott formátumban.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
A meghívandó metódus nevét adja meg. Ez a paraméter kötelező, és nem lehet null értékű vagy üres.
Type: | String |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Namespace
Az Osztály paraméter használatakor ez a paraméter azt a WMI-adattár névterét adja meg, ahol a hivatkozott WMI-osztály vagy objektum található.
Type: | String |
Aliases: | NS |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Egy WMI-osztály WMI-objektumútvonalát adja meg, vagy egy WMI-osztály egy példányának WMI-objektumútvonalát adja meg. A megadott osztálynak vagy példánynak tartalmaznia kell a Név paraméterben megadott metódust.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ThrottleLimit
Megadja az egyidejűleg végrehajtható WMI-műveletek számának szabályozási értékét. Ezt a paramétert az AsJob paraméterrel együtt használja a rendszer. A szabályozás korlátja csak az aktuális parancsra vonatkozik, a munkamenetre és a számítógépre nem.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Bemutatja, mi történne a parancsmag futtatásakor. A parancsmag nem fut.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Bevitelek
None
Ez a parancsmag semmilyen bemenetet nem fogad el.
Kimenetek
None
Ez a parancsmag nem hoz létre kimenetet.
Jegyzetek
A Windows PowerShell a következő aliasokat Invoke-WmiMethod
tartalmazza:
iwmi
Kapcsolódó hivatkozások
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: