Привет.
Подскажите как програмно "зажечь"/"потушить" сабж. Я в МСДН нашел пример, но он почему-то не совсем так, как надо работает
(я его немного переписал: в оригинале — для НумЛока, но там упоминалось что-то об особенностях его переключения под Вин98):
#include <windows.h>
void SetCapsLock( BOOL bState ) {
BYTE keyState[256];
GetKeyboardState((LPBYTE)&keyState);
if((bState && !(keyState[VK_CAPITAL] & 1)) || (!bState && (keyState[VK_CAPITAL] & 1))) {
// Simulate a key press
keybd_event( VK_CAPITAL, 0x3a, KEYEVENTF_EXTENDEDKEY | 0, 0 );
// Simulate a key release
keybd_event( VK_CAPITAL, 0x3a, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);
}
GetKeyboardState((LPBYTE)&keyState);
}
void main() {
SetCapsLock( TRUE );
}
With best regards,
Alexander.