Can't find the information you are looking for here? Then leave a message over on our WinBatch Tech Support Forum.
Keywords: iskeydown waitforkey read keys from keyboard trapkeys GetKeyboardState
#definefunction GetKeyboardState(buf) sDLLName = StrCat(DirWindows(1), "user32.dll") DLLCall(sDLLName, long:"GetKeyboardState", lpbinary:buf) BinaryEodSet(buf, 256) return buf #endfunction ;============================== ;start ;============================== boxopen("","Press any key.") buf1 = binaryalloc(256) buf2 = binaryalloc(256) before = GetKeyboardState(buf1) after = GetKeyboardState(buf2) while BinaryCompare(before, 0, after, 0, 256)==@true after = GetKeyboardState(buf2) endwhile gosub get_the_key binaryfree(buf1) binaryfree(buf2) ;============================== exit ;============================== :get_the_key key = "" for count = 0 to 255 x=binarypeek(buf2,count) if x<>0 && x<>1 then break next select count case 9 key = "Tab" break case 13 key = "Enter" break case 16 key = "Shift" break case 17 key = "Ctrl" break case 18 key = "Alt" break case 20 key = "CapsLock" break case 27 key = "Escape" break case 32 key = "Space" break case 33 key = "PgUp" break case 34 key = "PgDn" break case 35 key = "End" break case 36 key = "Home" break case 37 key = "Left arrow" break case 38 key = "Up arrow" break case 39 key = "Right arrow" break case 40 key = "Down arrow" break case 45 key = "Insert" break case 46 key = "Delete" break case 187 key = "=" break case 189 key = "-" break case 112 key = "F1" break case 113 key = "F2" break case 114 key = "F3" break case 115 key = "F4" break case 116 key = "F5" break case 117 key = "F6" break case 118 key = "F7" break case 119 key = "F8" break case 120 key = "F9" break case 121 key = "F10" break case 122 key = "F11" break case 123 key = "F12" break endselect if key == "" then key = num2char(count) message(count, key) return
Article ID: W15291
File Created: 2002:09:05:13:51:04
Last Updated: 2002:09:05:13:51:04