WMI的远程管理需要其计算机的本地管理员组权限,例:gwmi win32_computersystem -computer win08r2d
#在远程计算机上启动 notepad.exe 进程
invoke-wmimethod -path win32_process -name create -argumentlist notepad.exe -computername "win08r2d"
#停止 notepad.exe 进程
$np = get-wmiobject -query "select * from win32_process where name='notepad.exe'" -computername "win08r2d"
$np | remove-wmiobject
Invoke-WmiMethod -Class Win32_Process -Name Create -ArgumentList "GPUPDATE /FORCE" -EnableAllPrivileges -ComputerName $RemoteComputer
==========================================
获取远程计算机上的服务
$server = gwmi win32_service -ComputerName win08r2d|?{$_.name -eq "dhcp"}
#查看服务当前运行状态
$server.state
#更改服务启动类型:
$server.ChangeStartMode("Automatic") ,不可以为“Auto”
$server.ChangeStartMode("Manual")
$server.ChangeStartMode("Disabled")
返回值中 ReturnValue : 0 表示成功
#启动/停止服务
$server.StopService()
$server.StartService()
服务启动类型如下:
Value | Meaning |
---|---|
|
Device driver started by the operating system loader. This value is valid only for driver services. |
|
Device driver started by the operating system initialization process. This value is valid only for driver services. |
|
Service to be started automatically by the Service Control Manager during system startup. |
|
Service to be started by the Service Control Manager when a process calls theStartService method. |
|
Service that can no longer be started. |
Return value
Return code | Description |
---|---|
|
Success |
|
Not Supported |
|
Access Denied |
|
Dependent Services Running |
|
Invalid Service Control |
|
Service Cannot Accept Control |
|
Service Not Active |
|
Service Request Timeout |
|
Unknown Failure |
|
Path Not Found |
|
Service Already Running |
|
Service Database Locked |
|
Service Dependency Deleted |
|
Service Dependency Failure |
|
Service Disabled |
|
Service Logon Failure |
|
Service Marked For Deletion |
|
Service No Thread |
|
Status Circular Dependency |
|
Status Duplicate Name |
|
Status Invalid Name |
|
Status Invalid Parameter |
|
Status Invalid Service Account |
|
Status Service Exists |
|
Service Already Paused |