I want to open an application on another computer on the same network via the command line. The scenario here is that the user is in a room surrounded by about 20 computers and wants to be able to launch the same app on every computer without walking from screen to screen opening it up on each individual machine. I've discovered that I can get the basic functionality for this using PsExec as follows:

psexec \\[computer] -u [username] -p [password] -d -i [SessionID] [program]

For computer, username, password, and program, I'm good. Does anyone know of a way I can figure out which SessionID is assigned to a particular user logged on to a particular machine on the network? Alternately, is there a better way to go about what I'm trying to accomplish?

link|improve this question

57% accept rate
feedback

2 Answers

Using Process Explorer on the computer you can use the Users menu to determine the session ID. The number at the beginning of each entry in the menu is the session ID.

It looks like typically you should be able to use 0 for the default session.

link|improve this answer
Looks quite useful; however, I'm looking for the session ID assigned to a user on another computer. It looks like Process Explorer is only applicable to the machine on which it is running. Is that right? – Dan Tao Mar 23 '10 at 19:32
Yes that is true. I haven't found a way to do this remotely. – heavyd Mar 23 '10 at 19:54
feedback

You can use the qwinsta (or query session) tool to list all Terminal Server sessions.

Some servers allow to use it remotely directly:

qwinsta /server remotehost

In most cases, though, you'll have to run it through psexec:

psexec \\remotehost qwinsta
link|improve this answer
feedback

Your Answer

 
or
required, but never shown

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