PowerShell: Remotely Launching Processes

Unfortunately, the Start-Process cmdlet has no -ComputerName parameter so you cannot use it to launch processes on remote machines.

Use WMI instead. This line will run calc.exe on your local machine:

PS> (Invoke-WmiMethod Win32_Process Create calc.exe).ReturnValue -eq 0

And this slight adaption will run calc.exe on a computer named Server1 with Administrator credentials (adjust machine name and user name to your needs):

PS> (Invoke-WmiMethod Win32_Process Create calc.exe -ComputerName Server1 -Credential Administrator).ReturnValue -eq 0

Note that calc.exe will run but is not visible to anyone. So in real life, you’d use this technique to launch command line tools or applications that are designed to run unattended.

Leave a Reply

Your email address will not be published.