Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

How do I log a disconnected user off remotely?

For example, I remotely connect to a computer (with Dameware, if that matters) and run a command that takes a significant amount of time to complete. In that time I move on to other things. When I come back, (the command has presumably completed successfully) another user has switched to their account, leaving my account status as "Disconnected". How can I remotely log off my account without having to take control of the computer, switch to my account, log off, and have the user log in again?

share|improve this question
    
Can't you make a .bat with the command? Run the command, then logoff? – Luiz Angelo Sep 27 '13 at 11:57
up vote 17 down vote accepted
  1. First, check the session number with qwinsta:

    QWINSTA /server:YOURCOMPUTERNAMEHERE
    

    Write down the session ID.

  2. Then use the logoff command:

    LOGOFF YOURSESSIONIDHERE /server:YOURCOMPUTERNAMEHERE
    

See if that works.

share|improve this answer
    
QWINSTA gives me Error 5 getting sessionnames Error [5]:Access is denied. even though I am a local admin on the machine. – thePurpleMonkey Sep 26 '13 at 21:37
    
@thePurpleMonkey If this is a domain computer, you need to be the domain admin. If this is a personal computer, you may need to have exact same username on both PC (and both admin) and run the command from Luiz. qwinsta will attempt to connect using the 'current' credentials which may not have access on the remote computer. – Darius Sep 27 '13 at 5:40
    
@Darius you don't actually need to be the domain admin. I'm not one in my network and I can qwinsta machines without a problem. But the info is valuable none the less. Is it a domain machine or not? – Luiz Angelo Sep 27 '13 at 11:56
2  
@thePurpleMonkey I saw this in some other online forum, to suggest for you to do a "net use \\servername" before running qwinsta. That command will allow your PC and the server to establish trusted connection. If your current username is rejected, it will ask you for username to login to \\servername. Once that is established, you should be able to use qwinsta. Reference Forum Answer: tomshardware.com/forum/… (at the bottom of the page by Anonymous - December 4, 2009) – Darius Oct 1 '13 at 5:02
2  
Thank you all, you've been extremely helpful. The way I ended up solving this is opening a command prompt on the remote machine with PsExec, and running QWINSTA and LOGOFF from there. Then it finally worked. – thePurpleMonkey Oct 4 '13 at 15:52

I believe you can do this with logoff from the command line (assuming the machine you're remoting into is Windows). If I understand your question correctly, a user logs in while you're away from your remote session and logs in under a different account. You will be able to log off from their account via cmd.

share|improve this answer

For most versions of Windows: Log in to the system using an admin-enabled account. Bring up the task manager ("Windows Security" under the Start button if you RDP, "taskmgr.exe" from the command line, or any other way you prefer.) Go back to the "Users" tab. You'll see your own session & any other sessions. Select the other user's session and right-click, then choose Disconnect or Logoff (or, you can select the session and use the buttons at the bottom to do either of these.)

image of User tab in task manager

If it is a disconnected session, you can also select it, right-click, and use Connect -- this will switch you into that session instead of the one you're in. Then, of course, you can log out the session.

share|improve this answer
    
Ideally, I wouldn't want to affect the user of the computer by taking over their computer. Thanks, though. – thePurpleMonkey Sep 28 '13 at 6:08

If you have PSTOOLS installed, this is SUPER easy. If you do not have PSTOOLS installed, please do so. You may want to copy all of the .exes to your C:\Windows\system32 directory. (in all fairness, if you don't have PS tools and you're a systemadmin...you don't know what you are missing!)

Now, run CMD.exe as an administrator on the local PC, input your admin credentials if/when prompted. Now type "psexec \hostname cmd.exe" This command will run CMD.exe as your account, remotely, as if you are actually at the machine.

Now type "query session" this will now print out all the sessions that are available active/inactive, you'll want to note the Session ID #.

now type in "logoff #" where # = the session id you took note of previously.

You could do this with home based network PCs, but you'll have to have the same account on BOTH systems, and it could get a little tricky.

This will DEFINITELY work with domain PCs as I have tested it several times now.

share|improve this answer

Remotely logoff a user by username in one command:

logoff /server:"servername" | qwinsta /server:"servername" "username"
share|improve this answer
    
What if the server was password-protected? – oldmud0 May 13 at 0:38

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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