Функция SetKeyboardState (winuser.h)

Копирует массив состояний клавиш клавиатуры в таблицу состояния ввода-вывода клавиатуры вызывающего потока. Это та же таблица, к которым обращаются функции GetKeyboardState и GetKeyState . Изменения, внесенные в эту таблицу, не влияют на ввод с клавиатуры в любой другой поток.

Синтаксис

BOOL SetKeyboardState(
  [in] LPBYTE lpKeyState
);

Параметры

[in] lpKeyState

Тип: LPBYTE

Указатель на 256-байтовый массив, содержащий состояния клавиши клавиатуры.

Возвращаемое значение

Тип: BOOL

Если функция выполняется успешно, возвращается ненулевое значение.

Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Так как функция SetKeyboardState изменяет входное состояние вызывающего потока, а не глобальное входное состояние системы, приложение не может использовать SetKeyboardState для установки индикаторов NUM LOCK, CAPS LOCK или SCROLL LOCK (или японской KANA) на клавиатуре. Их можно задать или очистить с помощью SendInput для имитации нажатий клавиш.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header winuser.h (включая Windows.h)
Библиотека User32.lib
DLL User32.dll

См. также раздел