Last Updated 2005/07/27
Windows
Windowsキーを無効にする
2005/07/27

Windows キーをプログラムにて無効にするには WH_GETMESSAGE をフックして,コールバック関数内で以下のようにする.

LRESULT WINAPI HookMsgProc(int code,WPARAM wParam,LPARAM lParam)
{
    LPMSG lpStrc = (LPMSG)lParam;

    if( code < 0 ) {
        return CallNextHookEx( lpOldMsgHook, code, wParam, lParam);
    }

    if( lpStrc->message == WM_USER + 260 ) {
        // Windows キー押下
        if( lpStrc->hwnd == FindWindow("Shell_TrayWnd", NULL) ) {
            // タスクバーに送られるメッセージであればなにもしない
            lpStrc->message = WM_NULL;
        }
    }
    return CallNextHookEx( lpOldMsgHook, code, wParam, lParam);
}


プログラム的ではなく,起動時から無効にするには拙作の KeyCtrl にて無効にすることが可能である.


参照
前後のTips
Windowsキーを無効にする

DSS ProgrammingTipsCGI Ver1.02