We would like to be able to shutdown PCs that have been left on overnight ... or forever in fact ... :-) Ideally, we want to be able to do this in such a manner that if a user is in fact really working they have the option to cancel the shutdown.

I have been trying to do this using a couple of little tools I tracked down. These are poweroff.exe and shutdown.exe (not the one that MS supplies as part of XP) These little tools look the goods and allow me to customise a message and allow the user to cancel the process.

I can run these just fine and dandy from the command line with a variety of switch settings, either from a local drive on the PC in question or from a mapped drive on the NW server. So I know that the tools actually work as they should.

The next step is to create a Schedule Action Policy as per a cool solutions article I tracked down. This is a bit old (Jan 2004) but still looks usable.

I create the policy and set up the schedule to run at the appointed time and associate a workstation with the policy. Check the wmsched and the action is shown there with the appropriate next run time etc. The action will run but the results are not as expected. If I have the impersonation (under the Policy Schedule Tab Advanced Button) set to Interactive User then the GUI from the tool displays and allows me to cancel OK. But if I let the countdown continue the PC does not shutdown once the GUI closes. With one of the tools (poweroff.exe) I do get a message to the effect that there are insufficient priveleges to actually perform the action. If I set the impersonation to either of the remaining options (System or Unsecure System) then nothing happens at all when the action runs. No GUI no shutdown.

I suspect that this is something to do with local rights on the machine but have no idea what they might be. The PC is XP SP2 and the local windows account that I am using has admin privileges.

I am going to try to make this happen by using the scheduled action call a batch file which in turn invokes the tool so this would then be running "locally" but I am not holding my breath.

Any ideas?