Bagikan melalui


HindariPenggunaanWMICmdlet

Tingkat Keparahan: Peringatan

Deskripsi

Pada PowerShell 3.0, cmdlet CIM harus digunakan melalui cmdlet WMI.

Cmdlet berikut tidak boleh digunakan:

  • Get-WmiObject
  • Remove-WmiObject
  • Invoke-WmiMethod
  • Register-WmiEvent
  • Set-WmiInstance

Gunakan cmdlet berikut sebagai gantinya:

  • Get-CimInstance
  • Remove-CimInstance
  • Invoke-CimMethod
  • Register-CimIndicationEvent
  • Set-CimInstance

Cmdlet CIM mematuhi standar WS-Management (WSMan) dan dengan standar Common Information Model (CIM), memungkinkan pengelolaan sistem operasi Windows dan non-Windows.

Bagaimana

Ubah ke cmdlet berbasis CIM yang setara.

  • Get-WmiObject ->Get-CimInstance
  • Remove-WmiObject ->Remove-CimInstance
  • Invoke-WmiMethod ->Invoke-CimMethod
  • Register-WmiEvent ->Register-CimIndicationEvent
  • Set-WmiInstance ->Set-CimInstance

Contoh

Salah

Get-WmiObject -Query 'Select * from Win32_Process where name LIKE "myprocess%"' | Remove-WmiObject
Invoke-WmiMethod -Class Win32_Process -Name 'Create' -ArgumentList @{ CommandLine = 'notepad.exe' }

Benar

Get-CimInstance -Query 'Select * from Win32_Process where name LIKE "myprocess%"' | Remove-CIMInstance
Invoke-CimMethod -ClassName Win32_Process -MethodName 'Create' -Arguments @{ CommandLine = 'notepad.exe' }