Set-WmiInstance

Hiermee maakt of werkt u een exemplaar van een bestaande WMI-klasse (Windows Management Instrumentation) bij.

Syntax

Set-WmiInstance
   [-Class] <String>
   [-Arguments <Hashtable>]
   [-PutType <PutType>]
   [-AsJob]
   [-Impersonation <ImpersonationLevel>]
   [-Authentication <AuthenticationLevel>]
   [-Locale <String>]
   [-EnableAllPrivileges]
   [-Authority <String>]
   [-Credential <PSCredential>]
   [-ThrottleLimit <Int32>]
   [-ComputerName <String[]>]
   [-Namespace <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-WmiInstance
   -InputObject <ManagementObject>
   [-Arguments <Hashtable>]
   [-PutType <PutType>]
   [-AsJob]
   [-ThrottleLimit <Int32>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-WmiInstance
   -Path <String>
   [-Arguments <Hashtable>]
   [-PutType <PutType>]
   [-AsJob]
   [-Impersonation <ImpersonationLevel>]
   [-Authentication <AuthenticationLevel>]
   [-Locale <String>]
   [-EnableAllPrivileges]
   [-Authority <String>]
   [-Credential <PSCredential>]
   [-ThrottleLimit <Int32>]
   [-ComputerName <String[]>]
   [-Namespace <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-WmiInstance
   [-PutType <PutType>]
   [-AsJob]
   [-Impersonation <ImpersonationLevel>]
   [-Authentication <AuthenticationLevel>]
   [-Locale <String>]
   [-EnableAllPrivileges]
   [-Authority <String>]
   [-Credential <PSCredential>]
   [-ThrottleLimit <Int32>]
   [-ComputerName <String[]>]
   [-Namespace <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-WmiInstance
   [-PutType <PutType>]
   [-AsJob]
   [-Impersonation <ImpersonationLevel>]
   [-Authentication <AuthenticationLevel>]
   [-Locale <String>]
   [-EnableAllPrivileges]
   [-Authority <String>]
   [-Credential <PSCredential>]
   [-ThrottleLimit <Int32>]
   [-ComputerName <String[]>]
   [-Namespace <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-WmiInstance
   [-PutType <PutType>]
   [-AsJob]
   [-Impersonation <ImpersonationLevel>]
   [-Authentication <AuthenticationLevel>]
   [-Locale <String>]
   [-EnableAllPrivileges]
   [-Authority <String>]
   [-Credential <PSCredential>]
   [-ThrottleLimit <Int32>]
   [-ComputerName <String[]>]
   [-Namespace <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

Met de Set-WmiInstance cmdlet wordt een exemplaar van een bestaande WMI-klasse (Windows Management Instrumentation) gemaakt of bijgewerkt. Het gemaakte of bijgewerkte exemplaar wordt naar de WMI-opslagplaats geschreven.

Nieuwe CIM-cmdlets, geïntroduceerd Windows PowerShell 3.0, voeren dezelfde taken uit als de WMI-cmdlets. De CIM-cmdlets voldoen aan WS-Management (WSMan)-standaarden en aan de CIM-standaard (Common Information Model). Hierdoor kunnen cmdlets dezelfde technieken gebruiken om Windows-computers en computers met andere besturingssystemen te beheren. In plaats van te gebruiken Set-WmiInstance, kunt u overwegen de cmdlets Set-CimInstance of New-CimInstance te gebruiken.

Voorbeelden

Voorbeeld 1: WMI-logboekregistratieniveau instellen

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                      :

Met deze opdracht stelt u het WMI-logboekregistratieniveau in op 2. De opdracht geeft de eigenschap door die moet worden ingesteld en de waarde, samen beschouwd als een waardepaar, in de argumentparameter. De parameter gebruikt een hash-tabel die is gedefinieerd door de @{property = value} constructie. De klasse-informatie die wordt geretourneerd, weerspiegelt de nieuwe waarde.

Voorbeeld 2: Een omgevingsvariabele en de bijbehorende waarde maken

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

Met deze opdracht maakt u de omgevingsvariabele testvar met de waardetestwaarde. Dit doet u door een nieuw exemplaar van de WMI-klasse Win32_Environment te maken. Voor deze bewerking zijn de juiste referenties vereist en moet u mogelijk opnieuw opstarten Windows PowerShell om de nieuwe omgevingsvariabele te zien.

Voorbeeld 3: WMI-logboekregistratieniveau instellen voor verschillende externe computers

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                      :
...

Met deze opdracht stelt u het WMI-logboekregistratieniveau in op 2. De opdracht geeft de eigenschap door die moet worden ingesteld en de waarde, samen beschouwd als een waardepaar, in de argumentparameter. De parameter gebruikt een hash-tabel die is gedefinieerd door de @{property = value} constructie. De geretourneerde klassegegevens geven de nieuwe waarde weer.

Parameters

-Arguments

Hiermee geeft u de naam op van de eigenschap die moet worden gewijzigd en de nieuwe waarde voor die eigenschap. De naam en waarde moeten een naam-waardepaar zijn. Het naam-waardepaar wordt op de opdrachtregel doorgegeven als een hash-tabel. Bijvoorbeeld:

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

Type:Hashtable
Aliases:Args, Property
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-AsJob

Geeft aan dat deze cmdlet wordt uitgevoerd als achtergrondtaak. Gebruik deze parameter om opdrachten uit te voeren die lang duren.

Wanneer u de parameter AsJob opgeeft, retourneert de opdracht een object dat de achtergrondtaak vertegenwoordigt en wordt vervolgens de opdrachtprompt weergegeven. U kunt blijven werken in de sessie terwijl de taak is voltooid. Als deze wordt gebruikt voor een externe computer, wordt de taak gemaakt op de lokale computer en worden de resultaten van externe computers automatisch geretourneerd naar de lokale computer. Als u de taak wilt beheren, gebruikt u de cmdlets die het zelfstandig naamwoord ( de taak-cmdlets ) bevatten. Gebruik de Receive-Job cmdlet om de taakresultaten op te halen.

Als u deze parameter samen met externe computers wilt gebruiken, moeten de lokale en externe computers worden geconfigureerd voor externe communicatie. Daarnaast moet u Windows PowerShell starten met behulp van de optie Uitvoeren als administrator in Windows Vista en latere versies van het Windows-besturingssysteem. Zie about_Remote_Requirements voor meer informatie.

Zie about_Jobs en about_Remote_Jobs voor meer informatie over Windows PowerShell achtergrondtaken.

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Authentication

Hiermee geeft u het verificatieniveau op dat moet worden gebruikt met de WMI-verbinding. De aanvaardbare waarden voor deze parameter zijn:

  • -1: Ongewijzigd.
  • 0: Standaard.
  • 1: Geen. Er is geen verificatie uitgevoerd.
  • 2: Verbinding maken. Verificatie wordt alleen uitgevoerd wanneer de client een relatie tot stand brengt met de toepassing.
  • 3: Bellen. Verificatie wordt alleen uitgevoerd aan het begin van elke aanroep wanneer de toepassing de aanvraag ontvangt.
  • 4: Pakket. Verificatie wordt uitgevoerd op alle gegevens die van de client worden ontvangen.
  • 5: PacketIntegrity. Alle gegevens die worden overgedragen tussen de client en de toepassing, worden geverifieerd en geverifieerd.
  • 6: PacketPrivacy. De eigenschappen van de andere verificatieniveaus worden gebruikt en alle gegevens worden versleuteld.
Type:AuthenticationLevel
Accepted values:Default, None, Connect, Call, Packet, PacketIntegrity, PacketPrivacy, Unchanged
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Authority

Hiermee geeft u de instantie die moet worden gebruikt om de WMI-verbinding te verifiëren. U kunt standaard NTLM- of Kerberos-verificatie opgeven. Als u NTLM wilt gebruiken, stelt u de instantie-instelling in op ntlmdomain:<DomainName, waarbij <DomainName>> een geldige NTLM-domeinnaam identificeert. Als u Kerberos wilt gebruiken, geeft u kerberos:<DomainName>\<ServerName> op. U kunt de instantie-instelling niet opnemen wanneer u verbinding maakt met de lokale computer.

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Class

Hiermee geeft u de naam van een WMI-klasse.

Type:String
Position:0
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ComputerName

Hiermee geeft u de naam van de computer waarop deze cmdlet wordt uitgevoerd. Standaard is dit de lokale computer.

Typ de NetBIOS-naam, een IP-adres of een volledig gekwalificeerde domeinnaam van een of meer computers. Als u de lokale computer wilt opgeven, typt u de computernaam, een punt (.) of localhost.

Deze parameter is niet afhankelijk van Windows PowerShell externe communicatie. U kunt de parameter ComputerName zelfs gebruiken als uw computer niet is geconfigureerd voor het uitvoeren van externe opdrachten.

Type:String[]
Aliases:Cn
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Confirm

Hiermee wordt u gevraagd om bevestiging voordat u de cmdlet uitvoert.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False
-Credential

Hiermee geeft u een gebruikersaccount op dat gemachtigd is om deze actie uit te voeren. Standaard is dit de huidige gebruiker.

Typ een gebruikersnaam, zoals User01 of Domain01\User01, of voer een PSCredential-object in, zoals een object dat is gegenereerd door de Get-Credential cmdlet. Als u een gebruikersnaam typt, vraagt deze cmdlet om een wachtwoord.

Deze parameter wordt niet ondersteund door providers die zijn geïnstalleerd met de parameter, worden niet ondersteund door providers die zijn geïnstalleerd met Windows PowerShell.

Type:PSCredential
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-EnableAllPrivileges

Geeft aan dat met deze cmdlet alle machtigingen van de huidige gebruiker zijn ingeschakeld voordat de opdracht de WMI-aanroep uitvoert.

Type:SwitchParameter
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Impersonation

Hiermee geeft u het imitatieniveau dat moet worden gebruikt. De aanvaardbare waarden voor deze parameter zijn:

  • 0: Standaard. Leest het lokale register voor het standaard-imitatieniveau, dat meestal is ingesteld op 3: Imiteren.
  • 1: Anoniem. Verbergt de referenties van de beller.
  • 2: Identificeren. Hiermee kunnen objecten query's uitvoeren op de referenties van de aanroeper.
  • 3: Imiteren. Hiermee kunnen objecten de referenties van de aanroeper gebruiken.
  • 4: Gedelegeerde. Hiermee kunnen objecten andere objecten toestaan om de referenties van de aanroeper te gebruiken.
Type:ImpersonationLevel
Accepted values:Default, Anonymous, Identify, Impersonate, Delegate
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-InputObject

Hiermee geeft u een ManagementObject-object te gebruiken als invoer. Wanneer deze parameter wordt gebruikt, worden alle andere parameters, met uitzondering van de parameter Argumenten , genegeerd.

Type:ManagementObject
Position:Named
Default value:None
Accept pipeline input:True
Accept wildcard characters:False
-Locale

Hiermee geeft u de voorkeurslandinstelling voor WMI-objecten. De parameter Landinstellingen wordt opgegeven in een matrix in de MS_<LCID-indeling> in de voorkeursvolgorde.

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Namespace

Hiermee geeft u de naamruimte van de WMI-opslagplaats op waar de WMI-klasse zich bevindt wanneer deze wordt gebruikt met de klasseparameter .

Type:String
Aliases:NS
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Path

Hiermee geeft u een WMI-objectpad op van het exemplaar dat u wilt maken of bijwerken.

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-PutType

Geeft aan of het WMI-exemplaar moet worden gemaakt of bijgewerkt. De aanvaardbare waarden voor deze parameter zijn:

  • UpdateOnlyUpdates een bestaand WMI-exemplaar.
  • CreateOnly Hiermee maakt u een nieuw WMI-exemplaar.
  • UpdateOrCreateUpdates het WMI-exemplaar als deze bestaat of een nieuw exemplaar maakt als er geen exemplaar bestaat.
Type:PutType
Accepted values:None, UpdateOnly, CreateOnly, UpdateOrCreate
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ThrottleLimit

Hiermee geeft u het maximum aantal gelijktijdige verbindingen op dat tot stand kan worden gebracht om deze opdracht uit te voeren. Deze parameter wordt samen met de AsJob-parameter gebruikt. De beperkingslimiet is alleen van toepassing op de huidige opdracht, niet op de sessie of op de computer.

Type:Int32
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-WhatIf

Hiermee wordt weergegeven wat er zou gebeuren als u de cmdlet uitvoert. De cmdlet wordt niet uitgevoerd.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Accept pipeline input:False
Accept wildcard characters:False

Invoerwaarden

None

Deze cmdlet accepteert geen invoer.

Uitvoerwaarden

None

Deze cmdlet genereert geen uitvoer.