diff --git a/rosapps/tests/directory.xml b/rosapps/tests/directory.xml index 88b5ae7803e..978c27c2bdb 100644 --- a/rosapps/tests/directory.xml +++ b/rosapps/tests/directory.xml @@ -187,6 +187,10 @@ + + + + diff --git a/rosapps/tests/readconsole/main.c b/rosapps/tests/readconsole/main.c new file mode 100644 index 00000000000..2d85553707f --- /dev/null +++ b/rosapps/tests/readconsole/main.c @@ -0,0 +1,32 @@ +#include "stdio.h" +#include "Windows.h" + +int main() +{ + TCHAR Buffer = 0; + DWORD Count = 0; + + // + // We clear the mode, most importantly turn off ENABLE_ECHO_INPUT and ENABLE_LINE_INPUT + // This is the same mode as that is set up by getch() when trying to get a char + // + SetConsoleMode(GetStdHandle(STD_INPUT_HANDLE),0); + + // + // We read one char from the input and then return + // + ReadConsole(GetStdHandle(STD_INPUT_HANDLE),&Buffer,1,&Count,NULL); + + // + // We print out this char as an int to show that infact a backspace does count as input + // + printf("You printed %c :: ", Buffer); + printf("With a value %d :: ", Buffer); + printf("Number of chars recieved %lu :: ", Count); + printf("Char equal to backspace %d \n", (Buffer == '\b')); + + // + // :) + // + return 0; +} diff --git a/rosapps/tests/readconsole/readconsole.rbuild b/rosapps/tests/readconsole/readconsole.rbuild new file mode 100644 index 00000000000..1542622213a --- /dev/null +++ b/rosapps/tests/readconsole/readconsole.rbuild @@ -0,0 +1,5 @@ + + + kernel32 + main.c +