当c的控制台使用c或c ++运行时禁用键盘按键

我想在我的程序运行时禁用键盘,意味着没有人可以使用alt + F4等。我怎样才能使窗口操作系统中使用c。

Solutions Collecting From Web of "当c的控制台使用c或c ++运行时禁用键盘按键"

处理WM_SYSKEYUPWM_SYSKEYDOWN并返回0

这是处理这些消息的WndProc

LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { int wmId, wmEvent; PAINTSTRUCT ps; HDC hdc; switch (message) { case WM_COMMAND: wmId = LOWORD(wParam); wmEvent = HIWORD(wParam); // Parse the menu selections: switch (wmId) { case IDM_ABOUT: DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About); break; case IDM_EXIT: DestroyWindow(hWnd); break; default: return DefWindowProc(hWnd, message, wParam, lParam); } break; case WM_SYSKEYDOWN: case WM_SYSKEYUP: case WM_KEYDOWN: case WM_KEYUP: return 0; case WM_PAINT: hdc = BeginPaint(hWnd, &ps); // TODO: Add any drawing code here... EndPaint(hWnd, &ps); break; case WM_DESTROY: PostQuitMessage(0); break; default: return DefWindowProc(hWnd, message, wParam, lParam); } return 0; } 

按alt + f4发送WM_CLOSE消息。 你应该妥善处理这个消息。