...or because it is not supported on Windows Server 2003, this might explain why this does not work. This is the test server I have right now. So, I will have to move my tests into another server which will be Windows Server 2008. I will then assume that everything was ok with the code, if the default is ON, and SERVICE_CONTROL_PRESHUTDOWN would work.