Hook windows - interception des messages windows

0/5 (20 avis)

Vue 16 376 fois - Téléchargée 2 901 fois

Description

Ce code sert a montrer comment on peut utiliser les hooks windows ( les bases seulement !) et est fourni avec un trois exemple d'utilisation : une DLL d'interception des message de fermeture de fenêtre, une DLL de log des click de la souris et une DLL de log des touches frappées au clavier (Keylogger ;-).
Voilà tout ça est décomposé en 4 parties, un chargeur de DLL, y'a un endroit dans le code ou il faut choisir la DLL à charger... Tout ça de façon simple mais malheureusement peu commentée.... ( po l'tps dsl )...
Voilà pour tous ! Posez vos question !!

Codes Sources

A voir également

Ajouter un commentaire Commentaires
deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 2
8 juil. 2006 à 18:52
oui j'avai vu le typedef mais je le comprend pas non plus désolé , typedef bool(*SKH)(void)

bon je supose que bool c'est le type renvoyé par la fonction et (void) c'est parce qu'il n'y a pas de paramètre , mais je comprend pas pk le (*SKH). je suis désolé , mais là je comprend pas.


mais pour utilisé les fonction ici un __declspec(dllimport) void mafonction() ça n'irai pas? plutot que de passer par loadLibrary , ... ?? mdr
BruNews Messages postés 21041 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 19
8 juil. 2006 à 18:43
SKH est un typedef perso de fonction, en haut du fichier. C'est grace à cela que le compilo comprendra de mettre l'appel de fonction:
call adrSKH
pour SKH();
deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 2
8 juil. 2006 à 18:36
ha daccord , et pour en revenir au SKH c'est quoi comme type :s , et donc après avec le pointeur on peut faire un appel de fonction, donc si le pointeur est sgh , pour appeler la fonction on fait sgh() alors ? avec les param entre () si il y en à.

mais pour utilisé les fonction ici un __declspec(dllimport) void mafonction() ça n'irai pas? plutot que de passer par loadLibrary , ... ?
BruNews Messages postés 21041 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 19
8 juil. 2006 à 18:24
cast, comme d'hab ne sert qu'à satisfaire le compilo pour qu'il comprenne qu'ensute c'est bien un appel de fonction que l'on veut.

hookProc est toujours avec 3 params:
int code, WPARAM wParam, LPARAM lParam
lParam dépend du type de hook demandé, si donc est WH_GETMESSAGE alors lParam pointe sur une struct MSG. Faut donc bien dire au compilo (comme d'hab un cast) ce qu'on attend comme traitement ultérieur.
deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 2
8 juil. 2006 à 16:12
En faite le problème c'est pas tellement la dll pas commentée , mais plutot la source de l'éxécutable , je comprend pas grand chose, déjà SKH c'est quoi et la fonction uskh,sgh ? J'ai +- compris que GetProcessAdresse renvoie l'adresse d'un fonction (celle demandé) mais pourquoi le cast en SKH ? enfin bref je m'y retrouve pas bcp .
Afficher les 20 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.