pythonpython-3.xcapslock

Python 3.x - Getting the state of caps-lock/num-lock/scroll-lock on Windows


Just as the question asks, I know this is possible on Linux, but I couldn't find anything recent for Windows. Is it even possible?


Solution

  • You can use ctypes to load user32.dll and then call GetKeyState with nVirtKey = VK_CAPITAL (0x14)

    def get_capslock_state():
        import ctypes
        hllDll = ctypes.WinDLL ("User32.dll")
        VK_CAPITAL = 0x14
        return hllDll.GetKeyState(VK_CAPITAL)