Erstellt oder aktualisiert eine Instanz einer vorhandenen WMI-Klasse (Windows Management Instrumentation, Windows-Verwaltungsinstrumentation).

Syntax

Set-WmiInstance [-Klasse] <string> [[-Arguments] <hashtable>] [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Authority <string>] [-ComputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-Locale <string>] [-Namespace <string>] [-AsJob] [-PutType {<None> | <UpdateOnly> | <CreateOnly> | <UpdateOrCreate>}] [-ThrottleLimit <int>] [-Bestätigung] [-WhatIf] [<CommonParameters>]

Set-WmiInstance [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Authority <string>] [-ComputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-Locale <string>] [-Namespace <string>] [-AsJob] [-PutType {<None> | <UpdateOnly> | <CreateOnly> | <UpdateOrCreate>}] [-ThrottleLimit <int>] [-Bestätigung] [-WhatIf] [<CommonParameters>]

Set-WmiInstance -InputObject <ManagementObject> [-Arguments <hashtable>] [-AsJob] [-PutType {<None> | <UpdateOnly> | <CreateOnly> | <UpdateOrCreate>}] [-ThrottleLimit <int>] [-Bestätigung] [-WhatIf] [<CommonParameters>]

Set-WmiInstance -Path <string> [-Arguments <hashtable>] [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Authority <string>] [-ComputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-Locale <string>] [-Namespace <string>] [-AsJob] [-PutType {<None> | <UpdateOnly> | <CreateOnly> | <UpdateOrCreate>}] [-ThrottleLimit <int>] [-Bestätigung] [-WhatIf] [<CommonParameters>]

Set-WmiInstance [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Authority <string>] [-ComputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-Locale <string>] [-Namespace <string>] [-AsJob] [-PutType {<None> | <UpdateOnly> | <CreateOnly> | <UpdateOrCreate>}] [-ThrottleLimit <int>] [-Bestätigung] [-WhatIf] [<CommonParameters>]

Set-WmiInstance [-Authentication {<Default> | <None> | <Connect> | <Call> | <Packet> | <PacketIntegrity> | <PacketPrivacy> | <Unchanged>}] [-Authority <string>] [-ComputerName <string[]>] [-Credential <PSCredential>] [-EnableAllPrivileges] [-Impersonation {<Default> | <Anonymous> | <Identify> | <Impersonate> | <Delegate>}] [-Locale <string>] [-Namespace <string>] [-AsJob] [-PutType {<None> | <UpdateOnly> | <CreateOnly> | <UpdateOrCreate>}] [-ThrottleLimit <int>] [-Bestätigung] [-WhatIf] [<CommonParameters>]

Beschreibung

Mit dem Cmdlet "Set-WmiInstance" wird eine Instanz einer vorhandenen WMI-Klasse erstellt oder aktualisiert. Die erstellte oder aktualisierte Instanz wird in das WMI-Repository geschrieben.

Parameter

-Arguments <hashtable>

Gibt den Namen der zu ändernden Eigenschaft und den neuen Wert für diese Eigenschaft an. Name und Wert müssen ein Name-Wert-Paar bilden. Das Name-Wert-Paar wird über die Befehlszeile als Hashtabelle übergeben. Beispiel:

-argument @{Setting1=1; Setting2=5; Setting3="test"}.

Erforderlich?

false

Position?

2

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-AsJob

Führt den Befehl als Hintergrundauftrag aus. Verwenden Sie diesen Parameter, um Befehle auszuführen, deren Ausführung viel Zeit in Anspruch nimmt.

Wenn Sie den AsJob-Parameter verwenden, gibt der Befehl ein Objekt zurück, das den Hintergrundauftrag darstellt, und zeigt dann die Eingabeaufforderung an. Sie können die Sitzung weiterhin verwenden, während der Auftrag abgeschlossen wird. Wenn Set-WmiObject für einen Remotecomputer verwendet wird, wird der Auftrag auf dem lokalen Computer erstellt, und die Ergebnisse von Remotecomputern werden automatisch an den lokalen Computer zurückgegeben. Verwenden Sie zum Verwalten des Auftrags die Cmdlets, die das Substantiv "Job" enthalten (die Job-Cmdlets). Um die Auftragsergebnisse abzurufen, verwenden Sie das Cmdlet "Receive-Job".

Hinweis: Um diesen Parameter für Remotecomputer zu verwenden, müssen lokale Computer und Remotecomputer für Remoting konfiguriert werden. Außerdem müssen Sie Windows PowerShell in Windows Vista und höheren Versionen von Windows mit der Option "Als Administrator ausführen" starten. Weitere Informationen finden Sie unter "about_Remote_Requirements".

Weitere Informationen über Windows PowerShell-Hintergrundaufträge finden Sie unter "about_Jobs" und "about_Remote_Jobs".

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-Authentication <AuthenticationLevel>

Gibt die für die WMI-Verbindung zu verwendende Authentifizierungsebene an. Gültige Werte:

-1: Unchanged

0: Default

1: None (Es wird keine Authentifizierung ausgeführt.)

2: Connect (Die Authentifizierung wird nur ausgeführt, wenn der Client eine Beziehung mit der Anwendung herstellt.)

3: Call (Die Authentifizierung wird nur zu Beginn eines Aufrufs ausgeführt, wenn die Anwendung die Anforderung empfängt.)

4: Packet (Die Authentifizierung wird für alle Daten ausgeführt, die vom Client empfangen werden.)

5: PacketIntegrity (Alle Daten, die zwischen dem Client und der Anwendung übertragen werden, werden authentifiziert und überprüft.)

6: PacketPrivacy (Die Eigenschaften der anderen Authentifizierungsebenen werden verwendet, und alle Daten werden verschlüsselt.)

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-Authority <string>

Gibt die Autorität an, die zum Authentifizieren der WMI-Verbindung verwendet werden soll. Sie können die Standard-NTLM- oder Kerberos-Authentifizierung angeben. Legen Sie für die Verwendung von NTLM die Authority-Einstellung auf "ntlmdomain:<Domänenname>" fest, wobei <Domänenname> einen gültigen NTLM-Domänennamen darstellt. Geben Sie für die Verwendung von Kerberos "kerberos:<Domänenname>\<Servername>" an. Sie können die Authority-Einstellung nicht einschließen, wenn Sie eine Verbindung mit dem lokalen Computer herstellen.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-Klasse <string>

Gibt den Namen einer WMI-Klasse an.

Erforderlich?

true

Position?

1

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-ComputerName <string[]>

Gibt den Computer an, für den der Verwaltungsvorgang ausgeführt werden soll. Bei dem Wert kann es sich um einen vollqualifizierten Domänennamen, einen NetBIOS-Namen oder eine IP-Adresse handeln. Um den Namen des lokalen Computers anzugeben, verwenden Sie den Computernamen, "localhost" oder einen Punkt (.). Der lokale Computer ist der Standardwert. Wenn sich der Remotecomputer in einer anderen Domäne als der Benutzer befindet, müssen Sie einen vollqualifizierten Domänennamen verwenden. Sie können den Wert für diesen Parameter festlegen, indem Sie den Wert über die Pipeline an den Parameter übergeben.

Dieser Parameter beruht nicht auf Windows PowerShell-Remoting, bei dem die WS-Verwaltung verwendet wird. Sie können den ComputerName-Parameter von Get-WmiObject auch dann verwenden, wenn der Computer nicht für das Ausführen von Remotebefehlen der WS-Verwaltung konfiguriert ist.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-Credential <PSCredential>

Gibt ein Benutzerkonto an, das über die Berechtigung zum Ausführen dieser Aktion verfügt. Der Standardwert ist der aktuelle Benutzer. Geben Sie einen Benutzernamen ein, z. B. "User01", "Domain01\User01" oder "User@Contoso.com". Oder geben Sie ein PSCredential-Objekt ein, z. B. ein Objekt, das vom Cmdlet "Get-Credential" zurückgegeben wird. Wenn Sie einen Benutzernamen eingeben, werden Sie zur Eingabe eines Kennworts aufgefordert.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-EnableAllPrivileges

Aktiviert alle Berechtigungen des aktuellen Benutzers, bevor der Befehl den WMI-Aufruf ausführt.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-Impersonation <ImpersonationLevel>

Gibt die zu verwendende Identitätswechselebene an. Gültige Werte:

0: Default (Liest die lokale Registrierung für die Standard-Identitätswechselebene, die normalerweise auf "3: Impersonate" festgelegt ist.)

1: Anonymous (Verbirgt die Anmeldeinformationen des Aufrufers.)

2: Identify (Ermöglicht es Objekten, die Anmeldeinformationen des Aufrufers abzufragen.)

3: Impersonate (Ermöglicht es Objekten, die Anmeldeinformationen des Aufrufers zu verwenden.)

4: Delegate (Ermöglicht es Objekten, anderen Objekten die Verwendung der Anmeldeinformationen des Aufrufers zu gestatten.)

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-InputObject <ManagementObject>

Gibt ein ManagementObject-Objekt an, das als Eingabe verwendet werden soll. Wenn dieser Parameter verwendet wird, werden alle anderen Parameter außer dem Arguments-Parameter ignoriert.

Erforderlich?

true

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

true (ByValue)

Platzhalterzeichen akzeptieren?

false

-Locale <string>

Gibt das bevorzugte Gebietsschema für WMI-Objekte an. Der Locale-Parameter wird als Array im Format "MS_<LCID>" in der gewünschten Reihenfolge angegeben.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-Namespace <string>

Bei Verwendung mit dem Class-Parameter gibt dieser Parameter den WMI-Repositorynamespace an, in dem sich die WMI-Klasse befindet, auf die verwiesen wird.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-Path <string>

Gibt einen WMI-Objektpfad zu der Instanz an, die erstellt oder aktualisiert werden soll.

Erforderlich?

true

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-PutType <PutType>

Gibt an, ob die WMI-Instanz erstellt oder aktualisiert werden soll. Gültige Werte:

UpdateOnly: Aktualisiert eine vorhandene WMI-Instanz.

CreateOnly: Erstellt eine neue WMI-Instanz.

UpdateOrCreate: Aktualisiert die WMI-Instanz, sofern vorhanden, oder erstellt eine neue Instanz, wenn keine Instanz vorhanden ist.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-ThrottleLimit <int>

Hiermit kann der Benutzer einen Einschränkungswert für die Anzahl von WMI-Vorgängen angeben, die gleichzeitig ausgeführt werden können. Dieser Parameter wird zusammen mit dem AsJob-Parameter verwendet. Die Drosselungsgrenze gilt nur für den aktuellen Befehl und nicht für die Sitzung oder den Computer.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-Bestätigung

Fordert Sie vor der Ausführung des Befehls zur Bestätigung auf.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

-WhatIf

Beschreibt die Auswirkungen einer Ausführung des Befehls, ohne den Befehl tatsächlich auszuführen.

Erforderlich?

false

Position?

named

Standardwert

Pipelineeingaben akzeptieren?

false

Platzhalterzeichen akzeptieren?

false

<CommonParameters>

Dieses Cmdlet unterstützt die folgenden allgemeinen Parameter: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer und -OutVariable. Weitere Informationen finden Sie unter about_Commonparameters.

Eingaben und Ausgaben

Der Eingabetyp ist der Typ der Objekte, die über die Pipeline an das Cmdlet übergeben werden können. Der Rückgabetyp ist der Typ der Objekte, die das Cmdlet zurückgibt.

Eingaben

None

Dieses Cmdlet nimmt keine Eingabe an.

Ausgaben

None

Dieses Cmdlet generiert keine Ausgabe.

Beispiel 1

C:\PS>Set-WMIInstance -class Win32_WMISetting -argument @{LoggingLevel=2}

__GENUS                        : 2
__CLASS                        : Win32_WMISetting
__SUPERCLASS                   : CIM_Setting
__DYNASTY                      : CIM_Setting
__RELPATH                      : Win32_WMISetting=@
__PROPERTY_COUNT               : 27
__DERIVATION                   : {CIM_Setting}
__SERVER                       : SYSTEM01
__NAMESPACE                    : root\cimv2
__PATH                         : \\SYSTEM01\root\cimv2:Win32_WMISetting=@
ASPScriptDefaultNamespace      : \\root\cimv2
ASPScriptEnabled               : False
AutorecoverMofs                : {%windir%\system32\wbem\cimwin32.mof, %windir%\system32\wbem\ncprov.mof, %windir%\syst
                                 em32\wbem\wmipcima.mof, %windir%\system32\wbem\secrcw32.mof...}
AutoStartWin9X                 :
BackupInterval                 :
BackupLastTime                 :
BuildVersion                   : 6001.18000
Caption                        :
DatabaseDirectory              : C:\Windows\system32\wbem\repository
DatabaseMaxSize                :
Description                    :
EnableAnonWin9xConnections     :
EnableEvents                   : False
EnableStartupHeapPreallocation : False
HighThresholdOnClientObjects   :
HighThresholdOnEvents          : 20000000
InstallationDirectory          : C:\Windows\system32\wbem
LastStartupHeapPreallocation   :
LoggingDirectory               : C:\Windows\system32\wbem\Logs\
LoggingLevel                   : 2
LowThresholdOnClientObjects    :
LowThresholdOnEvents           : 10000000
MaxLogFileSize                 : 65536
MaxWaitOnClientObjects         :
MaxWaitOnEvents                : 2000
MofSelfInstallDirectory        :
SettingID                      :

Beschreibung
-----------
Mit diesem Befehl wird die WMI-Protokollierungsebene auf 2 festgelegt. Der Befehl übergibt die festzulegende Eigenschaft und den Wert (die zusammen ein Wertpaar bilden) im Argumentparameter. Der Parameter akzeptiert eine durch die Konstruktion @{property = value} definierte Hashtabelle. Die zurückgegebenen Klasseninformationen spiegeln den neuen Wert wider.






Beispiel 2

C:\PS>set-wmiinstance -class win32_environment -argument @{Name="testvar";VariableValue="testvalue";UserName="<SYSTEM>"}

__GENUS          : 2
__CLASS          : Win32_Environment
__SUPERCLASS     : CIM_SystemResource
__DYNASTY        : CIM_ManagedSystemElement
__RELPATH        : Win32_Environment.Name="testvar",UserName="<SYSTEM>"
__PROPERTY_COUNT : 8
__DERIVATION     : {CIM_SystemResource, CIM_LogicalElement, CIM_ManagedSystemElement}
__SERVER         : SYSTEM01
__NAMESPACE      : root\cimv2
__PATH           : \\SYSTEM01\root\cimv2:Win32_Environment.Name="testvar",UserName="<SYSTEM>"
Caption          : <SYSTEM>\testvar
Description      : <SYSTEM>\testvar
InstallDate      :
Name             : testvar
Status           : OK
SystemVariable   : True
UserName         : <SYSTEM>
VariableValue    : testvalue

Beschreibung
-----------
Mit diesem Befehl wird die testvar-Umgebungsvariable erstellt, die über den Wert "testvalue" verfügt. Hierzu wird eine neue Instanz der Win32_Environment-WMI-Klasse erstellt. Beachten Sie, dass für diesen Vorgang entsprechende Anmeldeinformationen erforderlich sind und dass Sie Windows PowerShell möglicherweise neu starten müssen, damit die neue Umgebungsvariable angezeigt wird.






Beispiel 3

C:\PS>Set-WMIInstance -class Win32_WMISetting -argument @{LoggingLevel=2} -computername system01, system02, system03

__GENUS                        : 2
__CLASS                        : Win32_WMISetting
__SUPERCLASS                   : CIM_Setting
__DYNASTY                      : CIM_Setting
__RELPATH                      : Win32_WMISetting=@
__PROPERTY_COUNT               : 27
__DERIVATION                   : {CIM_Setting}
__SERVER                       : SYSTEM01
__NAMESPACE                    : root\cimv2
__PATH                         : \\SYSTEM01\root\cimv2:Win32_WMISetting=@
ASPScriptDefaultNamespace      : \\root\cimv2
ASPScriptEnabled               : False
AutorecoverMofs                : {%windir%\system32\wbem\cimwin32.mof, %windir%\system32\wbem\ncprov.mof, %windir%\syst
                                 em32\wbem\wmipcima.mof, %windir%\system32\wbem\secrcw32.mof...}
AutoStartWin9X                 :
BackupInterval                 :
BackupLastTime                 :
BuildVersion                   : 6001.18000
Caption                        :
DatabaseDirectory              : C:\Windows\system32\wbem\repository
DatabaseMaxSize                :
Description                    :
EnableAnonWin9xConnections     :
EnableEvents                   : False
EnableStartupHeapPreallocation : False
HighThresholdOnClientObjects   :
HighThresholdOnEvents          : 20000000
InstallationDirectory          : C:\Windows\system32\wbem
LastStartupHeapPreallocation   :
LoggingDirectory               : C:\Windows\system32\wbem\Logs\
LoggingLevel                   : 2
LowThresholdOnClientObjects    :
LowThresholdOnEvents           : 10000000
MaxLogFileSize                 : 65536
MaxWaitOnClientObjects         :
MaxWaitOnEvents                : 2000
MofSelfInstallDirectory        :
SettingID                      :

...

Beschreibung
-----------
Mit diesem Befehl wird die WMI-Protokollierungsebene auf 2 festgelegt. Der Befehl übergibt die festzulegende Eigenschaft und den Wert (die zusammen ein Wertpaar bilden) im Argumentparameter. Der Parameter akzeptiert eine durch die Konstruktion @{property = value} definierte Hashtabelle. Die zurückgegebenen Klasseninformationen spiegeln den neuen Wert wider.






Siehe auch




Inhaltsverzeichnis