» »

C# branje pritisnjene tipke

C# branje pritisnjene tipke

Neon87 ::

Zdravo, delam nekega keyLoggerja(za vajo), vse mi je jasno, mal sem si pomagal z netom in me zanima kaj točno pomeni tale del kode(sem videl nekje,ko je bilo opisano za pomoč).


[DllImport("User32.dll")]
private static extern short GetAsyncKeyState(Keys vKey);

[DllImport("User32.dll")]
private static extern short GetAsyncKeyState(Int32 vKey);

foreach(System.Int32 i in Enum.GetValues(typeof(Keys)))
{
if(GetAsyncKeyState(i) == -32767)
{
keyBuffer += Enum.GetName(typeof(Keys), i) + " ";
}

}


v kejBuffer se "zlaga" vse kar je bilo pritisnjeno.

Prosim za kakšno enostavno razlago.

Hvala,LP
  • spremenil: Neon87 ()

darkolord ::

Hm, tole loopa čez vse tipke in za vsako preveri (s funkcijo GetAsyncKeyState (klik)), če je pritisnjena

Neon87 ::

if(GetAsyncKeyState(i) == -32767)
in ka bi to delalo? mogoč preverjalo če je pritisk, vendar zakaj ravno -32767?

darkolord ::

If the most significant bit is set, the key is down, and if the least significant bit is set, the key was pressed after the previous call to GetAsyncKeyState


-32767 = 0x8000 = 1000000000000000


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Keylogger

Oddelek: Programska oprema
352625 (1352) Blisk
»

Funkcija GetAsyncKeyState

Oddelek: Programiranje
61626 (1329) Looooooka
»

[C++] Sledenje tipkovnici

Oddelek: Programiranje
71403 (1198) TEDY
»

[C#] unmanaged->managed code

Oddelek: Programiranje
112142 (2017) Zzzzzzz
»

DirectX, neki ne gre

Oddelek: Programiranje
61149 (1047) Senitel

Več podobnih tem