Guest User

Untitled

a guest
Apr 11th, 2015
356
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Nim 0.67 KB | None | 0 0
  1. import windows
  2.  
  3. #From http://faq.cprogramming.com/cgi-bin/smartfaq.cgi?answer=1045691686&id=1043284392
  4.  
  5. proc getChar(ch:var TCHAR): bool =
  6.   var
  7.     ret = false
  8.     stdInHandle = GetStdHandle(STD_INPUT_HANDLE)
  9.     saveMode: DWORD
  10.    
  11.   discard GetConsoleMode(stdInHandle, saveMode)
  12.   discard SetConsoleMode(stdInHandle, ENABLE_PROCESSED_INPUT)
  13.  
  14.   if WaitForSingleObject(stdInHandle, INFINITE) == WAIT_OBJECT_0:
  15.     var num: DWORD
  16.     discard ReadConsole(stdInHandle, addr ch, DWORD(1), num, nil)
  17.  
  18.     if num == 1: result = true
  19.   discard SetConsoleMode(stdInHandle, saveMode)
  20.  
  21. proc getChar*(): TCHAR =
  22.   var ch: TCHAR = TCHAR(0)
  23.   discard getChar(ch)
  24.   return ch
Advertisement
Add Comment
Please, Sign In to add comment