Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nivel de gravedad: Advertencia
Descripción
A partir de PowerShell 3.0, los cmdlets CIM se deben usar a través de los cmdlets de WMI.
No se deben usar los siguientes cmdlets:
Get-WmiObjectRemove-WmiObjectInvoke-WmiMethodRegister-WmiEventSet-WmiInstance
En su lugar, use los siguientes cmdlets:
Get-CimInstanceRemove-CimInstanceInvoke-CimMethodRegister-CimIndicationEventSet-CimInstance
Los cmdlets CIM cumplen con los estándares WS-Management (WSMan) y con el estándar Common Information Model (CIM), lo que permite la administración de sistemas operativos Windows y no Windows.
Cómo
Cambie al cmdlet basado en CIM equivalente.
-
Get-WmiObject->Get-CimInstance -
Remove-WmiObject->Remove-CimInstance -
Invoke-WmiMethod->Invoke-CimMethod -
Register-WmiEvent->Register-CimIndicationEvent -
Set-WmiInstance->Set-CimInstance
Ejemplo
Incorrecto
Get-WmiObject -Query 'Select * from Win32_Process where name LIKE "myprocess%"' | Remove-WmiObject
Invoke-WmiMethod -Class Win32_Process -Name 'Create' -ArgumentList @{ CommandLine = 'notepad.exe' }
Correcto
Get-CimInstance -Query 'Select * from Win32_Process where name LIKE "myprocess%"' | Remove-CIMInstance
Invoke-CimMethod -ClassName Win32_Process -MethodName 'Create' -Arguments @{ CommandLine = 'notepad.exe' }