Bonjour,
Tout d'abord voici les qualités nécessaires afin de bien comprendre cette source :
- Savoir lire le langage vb
- Maîtriser la fonction "Declare"
- Savoir ce qu'est une "DLL"
- Connaitre le format de fichier "EXE" (ou "Portable Executable")
- Savoir ce qu'est un crochetage de fonction
- Avoir envie de lire la suite (cette qualité prend le dessus sur toutes les autres)
Pourquoi cette source :
Très bien alors maintenant que vous êtes avertis, on peut continuer. Cette source a debuté sur une étude du loader de windows XP. En effet la question etait "peut on ajouter dynamiquement des fonctions à un executable et les exporter avec GetProcAddress ?". Apres de longues heures de codage il s'avere que la reponse est "OUI". Donc concretement on demontre le fait qu'il est possible de transformer un EXE en DLL en runtime.
Mais que fait cette source :
Il faut vous imaginer le format de fichier EXE (qui est le même que celui des DLL) donc on va réecrire la memoire de l'EXE de telle sorte que le systeme croit que c'est une DLL (modification de l'entête et de la table d'exportation) et ainsi exporter des fonctions. On peut ainsi transformer l'executable en plugin ou bien encore re-router des fonctions d'une dll vers nos propres fonctions.
Que faut il penser de cette source :
- Si vous ne comprennez pas tout : Ne vous inquietez pas c'est normal car elle est issue de mon esprit tordu.
- Si vous trouvez que cette source est totalement inutile : Vous avez raison alors ne vous attardez pas dessus.
- Si vous vous appelez BruNews, Warning ou Renfield : alors prenez-la comme une dedicace personnelle.
- Si vous avez quand même reussi à lui trouver une utilité : Arretez la boisson ;)
Conclusion :
Rien de plus...
Bonne pr@g
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.