在winxp下点击 开始->关机计算机 会弹出关闭计算机的对话框 ,我想不让它弹出来怎么办?
有个问题向大家请教一下。
在winxp下点击
开始->关机计算机 会弹出关闭的对话框
我现在要实现这么一个功能:
当用户点击
开始->关机计算机 后 不弹出这个对话
而是弹出我自己message。
请大家帮忙指点一下。。
[解决办法]
我的结果是:
WM_COMMAND 消息是 0111
[解决办法]
写一个DLL注入到explorer.exe进程.
然后查找任务栏窗口,r接管窗口消息循环,处理WM_COMMAND消息.
WNDPROC OldWindowProc;LRESULT CALLBACK NewWindowProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){ if (message == WM_COMMAND && wParam == 506) { MessageBox(NULL, TEXT("禁止关机"), NULL, NULL); return 1; } return ::CallWindowProc(OldWindowProc, hWnd, message, wParam, lParam);}hwnd = FindWindow(TEXT("Shell_TrayWnd"), NULL); OldWindowProc = (WNDPROC)::SetWindowLongPtr(hwnd, GWL_WNDPROC, (LONG)NewWindowProc);