Bonjour,

Je vous propose un nouvel élément à utiliser : [Delphi]Keylogger

KEYLOGGER, ou programme de suivi des touches appuyées sur l'ordinateur.



Note importante : ce programme est fournit pour des besoin didactiques ainsi que pour présenter l'une des méthodes d'un KeyLogger. Vous êtes responsables de l'utilisation que vous ferez de ce source !



Ce programme est basé sur l'utilisation des Hooks de windows. Les hooks permettent d'être avertis de certaines catégories d'évènements : clavier, souris...

Ainsi à chaque appui de touche une procédure du programme de suivi est appelée. Mais c'est là que les choses se compliquent : comme l'appel de procédure s'effectue dans l'environnement de l'application concernée, les variables du programme, même globales ne sont pas accessibles. C'est pourquoi la procédure appelée doit être située dans une dll, car elle peut être appelée en restant dans l'environnement des applications.

Le suivi des touches est alors effectué dans un fichier dont le nom est connu. Par souci de vitesse, le mieux est d'utiliser un fichier placé en mémoire ainsi aucun n'accès disque n'est effectué.



L'application présentée ici implémente le KeyLogger tel que présenté ci-dessus. Reportez-vous à l'aide SDK pour plus de détails



La structure du fichier généré est la suivante :

S000TTTT=PROCESS.EXE

S : 0 quand la touche est appuyée, 8 quand la touche est lâchée

TTTT : Code virtuel de la touche, voir l'aide de delphi pour avoir la liste des codes

PROCESS.EXE : nom de l'exécutable actif au moment de l'appui/lâché de la touche

Par exemple si dans Internet Explorer vous appuyez et lâchez les touches ABCD vous obtenez :

00000041=IEXPLORE.EXE

80000041=IEXPLORE.EXE

00000042=IEXPLORE.EXE

80000042=IEXPLORE.EXE

00000043=IEXPLORE.EXE

80000043=IEXPLORE.EXE

00000044=IEXPLORE.EXE

80000044=IEXPLORE.EXE



Qu'en pensez-vous ?