Other than this, although not really meeting your criteria -but perhaps a
second best- is the logon hours property of user objects used in conjunction
with the GPO setting: "Microsoft network server: Disconnect clients when
logon hours expire".
This'll log people off, for example, after 1800.
However, if you're looking for a way to do this because of people locking
shared machines during the day then this won't help. Ryan offered some good
advice, and a small scheduled script or app is probably a good way of doing
this. However, you could also instruct your users not to do this; or set
the machines not to lock when the screen saver kicks in -this way they'd
have to lock it themselves...
--
Paul Williams
http://www.msresource.net
http://forums.msresource.net
There is not an easy way to do this (other than hitting the power button).
That is there for security as the machine is Locked specifically to prevent
access by anyone who does not have admin rights.
The real problem with a script to do this is that there really isn't an easy
way to trap the lock event. You could write an application that runs as a
service and waits for that to happen, but that is probably more work than
its worth.
The easiest way to simulate this would be to schedule a task that logs the
computer off, but that will only run if the computer has been idle more than
XX minutes. So, if you wanted the computer to log off or restart after 60
minutes of idle time, you can schedule the logoff every 30 min, but only if
the computer has been idle for 60 min or more. (The longest possible idle
would be 89 min.) This is not elegant, but if you have a real need to do
this, it would work.