Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Alternativa a getchar()
Forum - C/C++ - Alternativa a getchar()

Avatar
mainframe.it (Normal User)
Newbie


Messaggi: 2
Iscritto: 14/07/2007

Segnala al moderatore
Postato alle 12:00
Sabato, 14/07/2007
Salve a tutti, sto cercando di sviluppare un semplice gioco in c, ma devo usare una funzione per registrare il tasto premuto dall'utente (per esempio freccia in su) e comportarmi di consegueza.

Il problema è che getchar blocca l'esecuzione,e io cercavo invece una funzione che controlli soltato se è stato premuto, e se è stato premuto registra il valore in una variabile.

Mi hanno consigliato di usare l'API GetAsyncKeyState, ma ho notato che è usato per i keylogger, e non trovo molta documentazione :-D

Grazie in anticipo :)

PM Quote
Avatar
Oligoatria (Founder Member)
Pro


Messaggi: 79
Iscritto: 20/02/2006

Segnala al moderatore
Postato alle 14:09
Sabato, 14/07/2007
Credo che GetAsyncKeyState() sia la funzione più adatta allo scopo, anche perchè è spesso utilizzata.. come hai detto tu, basta guardare il sorgente di un keylogger o anche di un giochetto - ne trovi qui su Pierotofy.it. Se proprio vuoi qualcosa di facile facile in italiano ecco qui un link:
http://unsecure.altervista.org/tastiera/tastiera.htm.

Se vuoi un'altra funzione prova:
if (key == Get_Ascii_Key())

con

unsigned char Get_Ascii_Key()
{
    if (_bios_keybrd(_KEYBRD_READY))
         return(_bios_keybrd(_KEYBRE_READ));
    else return (0);
}
P.S.: quest'ultima non mi ricordo se funziona.. non mi ricordo nemmeno dove l'ho trovata!

PM Quote
Avatar
mainframe.it (Normal User)
Newbie


Messaggi: 2
Iscritto: 14/07/2007

Segnala al moderatore
Postato alle 14:19
Sabato, 14/07/2007
hum ok grazie :=) era proprio da unsecure che avevo trovato materiale per GetAsyncKeyState()

Adesso guardo anche per le funzioni che hai postato!

:)

PM Quote
Avatar
pierotofy (Admin)
Guru^2


Messaggi: 6230
Iscritto: 04/12/2003

Segnala al moderatore
Postato alle 19:51
Lunedì, 16/07/2007
Guarda sull'msdn online sul sito di microsoft.


Il mio blog: https://piero.dev
PM Quote