How to start remotely process in PowerShell

30,221

You can try using WMI:

$command = "notepad.exe"
$process = [WMICLASS]"\\$CompName\ROOT\CIMV2:win32_process"
$result = $process.Create($command) 

If you need passing credentials:

$cred = get-credential
$process = get-wmiobject -query "SELECT * FROM Meta_Class WHERE __Class = 'Win32_Process'" -namespace "root\cimv2" -computername $CompName -credential $cred
$results = $process.Create( "notepad.exe" )
Share:
30,221
Servuc
Author by

Servuc

Dev, maker, metalleux ! Love cats

Updated on July 16, 2022

Comments

  • Servuc
    Servuc almost 2 years

    I have a problem, I have a script which:

    • Connect with PSSession (I use PSSession with admin account)
    • Stop 2 process
    • Do change on them files
    • Start the 2 process (Problem here)

    I want to start process on server, so i'm connect with PSSession (No problem)

    I do Invoke-Command :

    # $pathProg path to my program
    Invoke-Command -session $mySession -command {Start-Process $($args[0])} -ArgumentList $pathProg
    

    But it does nothing (I verify with VNC)

    I do Invoke-Command too :

    # $pathProg path to my program
    Invoke-Command -session $mySession -command {&$($args[0])} -ArgumentList $pathProg
    

    It lauch the program (Good) but my script wait the end program (Not good)

    Anyone have an idea ?

    Thanks

  • Servuc
    Servuc over 10 years
    Thanks !!! +1 :D I think that is the "version bourrin" (in French ^^) but it works !
  • CB.
    CB. over 10 years
    Le cheval ou la femme facile? ;) C'est un plaisir aider!
  • Lei Yang
    Lei Yang about 8 years
    But there's no GUI, how to display the GUI?