小弟我想用钩子程序来截获系统的关机消息,请教怎么实现

我想用钩子程序来截获系统的关机消息,,请问如何实现
前辈们   给点意见   最好有代码   传上来   !!


------解决方案--------------------
如果是服务的话,用RegisterServiceCtrlHandlerEx注册一个如下形式的回调函数:
DWORD WINAPI HandlerEx(
DWORD dwControl,
DWORD dwEventType,
LPVOID lpEventData,
LPVOID lpContext);
类似窗口的回调函数。
其中dwControl如果为SERVICE_CONTROL_SHUTDOWN 就是要关机了。


------解决方案--------------------
如果是Console程序的话,用SetConsoleCtrlHandler注册一个如下形式的回调函数:
BOOL WINAPI HandlerRoutine(DWORD dwCtrlType);
其中dwCtrlType如果为CTRL_SHUTDOWN_EVENT 就是要关机了。