Napisałem taki oto prosty programik:
#include <Windows.h>
#include <iostream>
using namespace std;
const int baseOfSigns=255;
char interrogateBuffer()
{
int i=0;
for (i=baseOfSigns; i>0 ; i--)
for (i=0; i<baseOfSigns;i++)
{
if (GetAsyncKeyState(i))
return static_cast<char>(i);
}
}
int main(void)
{
while(interrogateBuffer() != '`')
cout<<interrogateBuffer();
system("PAUSE");
}
Jak pewnie większość starych wyjadaczy się domyśliła problemy są dwa:
-
Po nieważne jak króciutkim stuknięciu klawisza w konsoli pojawia się kilkaset jego kopii. Jak odpowiednio "spowolnić" program aby wczytywana była naturalna liczba znaków(nie chcę stosować opóźnienia na "chybił trafił" tak jak to chyba jest tutaj Prosty i skuteczny KeyLogger dla Windows) ?
-
Dlaczego zawsze wyświetlają się wielkie litery?