I am trying to use PSExec to kick off a console application on a remote computer in an interactive state. When I run something like this:

PsExec.exe -s -d -i 1 \\MyServer notepad.exe

It launches Notepad just fine. If I then run this:

PsExec.exe -s -d -i 1 \\MyServer C:\Temp\MyConsoleApp.exe

It launches the command windows but doesn't do anything as far as I can tell. As in, when I run my console application locally, it displays a "heartbeat" every 5 seconds, but when I run it remotely, nothing is displayed in the command window. The .exe does show up as a process in Task Manager. Any ideas?


i think you have to set the working directory with -w :

PsExec.exe -s -d -i 1 -w c:\temp \\MyServer MyConsoleApp.exe



I think you can look at the session Id for your current user and pass it as parameter with -i For example :

PsExec.exe -s -d **-i 2** -w c:\temp \\MyServer MyConsoleApp.exe

To look at the correct session Id you can open cmd and run command : query session Sometimes the session Id is 2 for the active user you want to start process for, so try looking for your correct session Id and use it with -i patameter. It should work. It worked for me.

  • How do I look for a session ID? – Thomas Weller Sep 4 '15 at 9:02
  • @ThomasWeller quser – totaam Apr 5 '20 at 14:18

To look for a session ID of a User, open Task manager on that particular computer and look for your logged in username on Users Tab.

  • This doesn't appear to address the question. – EightBitTony Jan 5 '16 at 14:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.