--lua
do
    -- У меня пути не стандартные, чтобы избежать свинарника.
    -- Поэтому тут есть пара "лишних" строк.
    -- Сохраняем _текущие_ пути по которым ищутся модули.
    local back = package.path
    -- Дописываю путь по которому у меня лежат модули.
    package.path = "luaPlugins\\winapi\\?.lua;"..package.path
    -- Подгружаем собственно модуль.
    -- Хз почему, но грузить нужно именно так.
    -- Просто require'winapi' не пашет.
    setfenv(1, require'winapi')
    -- Подгружаем кусок отвечающий за клавиатуру
    --require[[winapi.keyboard]]
    -- Возвращаем пути поиска модулей на исходные.
    package.path = back
end

-- Поолучаем состояние клавиши:
-- state - нажата/отжата
-- toggle - для лампочек горит/не горит.
local state, toggle = GetKeyState(0x14)
log(tostring(state),tostring(toggle))