-
Patcher un programme
bonjour,
je suis un peu débutant en delphi et j'aimerais bien savoir comment, à l'aide d'un programme, je pourrais en patcher un autre (c'est à dire lui attribuer une valeur à une variable par exemple) sans pour celà utiliser un fichier ini ou la base de registres.
Une solution serait peut être que le premier programme créée le second, en tenant compte de certains paramètres.
Merci de répondre si vous avez une idée.
-
Pour modifier une ressource dans un exécutable :
http://www.developpez.net/forums/vie...esource+hacker
Pour ta dernière suggestion, cela peut être une bonne voie selon tes motivations réelles. Je ne t'en dirais pas plus car ton post sent le crack à plein nez :evil:
-
non ce n'est pas pour un crack, mais pour une appli personalisée que je désirerais distribuer dans un cercle réduit et pour que celle ci soit nominative afin de pour voir savoir qui utilise une base de donnees, qui l'a modifiée, etc sans pour autant configurer manuellement la source et recompiler à chaque fois
-
Si j'ai bien compris tu veux créer un Exe 'personnalisé' à un utilisateur.
Donc tu veux avoir autant d'Exe différent que tu as d'utilisateur ?
J'imagie que c'est pour sécuriser ton application. Le probleme que tu vas avoir c'est lorsque tu fera une mise a jour de ton Exe, il faudra lors de l'installation tenir compte de la partie personnalisé de ton exe...
Bref ca devient vite l'enfert.
Le mieux est de passer par un fichier externe (pas forcément un .ini) dans lequel tu inscrits ton paramétrage (s'il le faut tu cryptes ce fichier).
Lors du lancement de ton exe, tu regardes si tu trouve ce que tu veux dans ce fichier sinon tu quittes l'appli....
Ainsi lors de mise à jour de ton exe tu ecrases l'ancien exe sans te soucier de la parti personnalisation....
-
Ton problème est tres simple, tu crees dans ton programme d'origine une constante chaine que tu vas rendre identifiable en la declarant comme ca:
const
marqueur:string='SUPER_MARQUEUR';
ensuite tu compiles ton EXE, et avec un editeur binaire tu recherches la position de cette chaine 'SUPER_MARQUEUR' dans ton executable.
Ensuite, dans ton programme de 'personnalisation' de ton executable, tu vas ecrire une chaine de la meme longueur a cette position. Cela remplacera 'SUPER_MARQUEUR' par 'UTILISATEUR001' par exemple dans ton executable d'origine qui n'aura qu'a se servir de cette constante marqueur pour identifier quel EXE se sera connecté a ta base.
Est-ce-que ca repond a ta question?
-
oui, ce procédé m'a l'air appliqué à ce qu'il me faut.
merci.