Mail Archives: cygwin/1997/10/17/18:55:03
Hi,
A while ago I posted a question about getting the console in raw mode.
In the meantime I found a partially working solution using
GetConsoleMode and
SetConsoleMode.
Here's a piece of code:
#include <stdio.h>
#include <fcntl.h>
#include <windows.h>
main()
{
DWORD dwMode;
HANDLE hStdIn = GetStdHandle(STD_INPUT_HANDLE);
if (GetConsoleMode(hStdIn, &dwMode) == TRUE)
SetConsoleMode(hStdIn,
dwMode & ~(ENABLE_LINE_INPUT | /* No buffering */
ENABLE_PROCESSED_INPUT |
ENABLE_ECHO_INPUT | /* No echo
*/ ENABLE_WINDOW_INPUT));
for (;;)
{
int c = getchar();
printf("%d <%c>\n", c, c);
}
}
Now all works fine except for two things:
1) getchar() does not distinguish between <CR> and <LF>
2) <LF) produces <CR><LF>
I've also tried a version using ReadConsole(), I've tried _setmode(0,
O_BINARY), but
without any success.
Does any of you have any idea ?
Thanks in advance for your time.
Kees
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request AT cygnus DOT com" with one line of text: "help".
- Raw text -