繁体   English   中英

如何使用Powershell WMI在远程计算机上启动进程?

[英]How to start a process on remote computer using powershell WMI?

我们正在升级服务器,需要先停止应用程序,然后再执行更新,然后重新启动它。

我正在网上阅读有关此内容的信息,大多数链接都谈到了remoting但是某些机器未启用PSRemoting ,因此我需要坚持使用wmi

希望对此提出一些建议吗?

要终止该过程,我将使用以下方法:

$processes=Get-WmiObject -Class Win32_Process -ComputerName $Address -Filter "name='$ProcessName'"

foreach ($process in $processes) 
{
    $returnval = $process.terminate()
    $processid = $process.handle

    if($returnval.returnvalue -eq 0) {
        write-host "The process $ProcessName `($processid`) terminated successfully"
    }
    else {
        write-host "The process $ProcessName `($processid`) termination has some problems"
    }
}

您没有说您要处理的OS和PS版本。

您不是在说什么,还是在发布内容时遇到问题。

即使仅使用WMI,您仍然必须正确配置Windows WMI才能执行此操作,并且要知道Windows没有开箱即用的配置,可以在不进行所有正确的WinRM,WMI和防火墙手动配置的情况下为您提供所需的信息。

仅通过GPO启用PSRemoting更加简单。

否则,您将需要对twin看看winrs.exe或MS SysInternals psexec。

winrs Windows远程管理使您可以远程管理和执行程序。

PsExec v2.2

还要回到我正在使用的OS和PowerShell版本。

调用Wmi方法

会导致这样的事情-

Invoke-WmiMethod -ComputerName $TargetMachine -Namespace root\cimv2 -Class Win32_Process..."

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM