[这个贴子最后由无条件为你在 2006/03/24 06:55pm 第 2 次编辑]
有人喜欢用ExitWindowsEx()函数来关机,还要提升权限什么的,好像兼容性也不是太好。也有人用WinExec("Shutdown.exe -s -t 0",SW_HIDE);关机,但在 Windows 98以下版本的操作系统中是不管用的吧?其实有一种非常简单的方法。就是用程序调用Alt+F4关机,在任何操作系统下都可以使用!
程序核心代码如下:
//执行Ctrl+ESC,其目的是为了让开始菜单获取焦点,否则Alt+F4只能关闭窗口而不能关机。
keybd_event(17,0,0,0);//按下Ctrl键不放!
keybd_event(27,0,0,0);//执行ESC键。
keybd_event(17,0,KEYEVENTF_KEYUP,0);//松开Ctrl键
//执行Alt+F4
Sleep(300);
keybd_event(18,0,0,0);//按下Alt键不放!
keybd_event(115,0,0,0);//执行F4键
keybd_event(18,0,KEYEVENTF_KEYUP,0);//松开Alt键
Sleep(1300);//等待1.3秒,因为计算机在调用关机对话框需要一点时间。
keybd_event(85,0,0,0);
keybd_event(13,0,0,0);//执行回车键。 |