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 |