Editeur hexa

cs_Mike Messages postés 70 Date d'inscription lundi 17 décembre 2001 Statut Membre Dernière intervention 24 juillet 2004 - 16 sept. 2002 à 22:30
cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 - 1 avril 2003 à 21:21
Salut,

J'ai un probleme avec une sorte de prog pour faire des patch, j'utilise un hediteur hexa ( Hview ) pour ouvrir l'application, et une appli VB pour faire les modifs.

Par exemple je crée un variable constante ds un prog genre

const variable = "salut"
Msgbox variable

je compile, j'ai mon exe, Je lance donc mon editeur hexa, je repere la variable constante "salut" donc, pour le moment je ve juste changer le "s" donc je repere l'offset de "s" ds mon editeur hexa meton 300 et j'applique ce programme VB ;

Open "appli.exe" For Binary Access Write As #1
put #1, 300 + 1, "T"
close #1

Et je ve que quand je lance mon appli.exe le msgbox soit "Talut" car j'aurais remplacer le "s" par un "T", j'avais fé un programme similaire qui fonctionner mais je l'es perdu, et pas moyen de retrouver le bug.
Justement le bug, c que qu'il fé bien des modifs ds le l'exe, mais j'ai l'impression qu'il les fé n'importe ou, enfin disons ds les alentour des offset de 300 mais pas sur 300, je pige vraiment pas pourquoi.

Si donc tu pe 'maider ça seré sympa

@+ HAVE FUN
enjoy
WWW.MOTEURPROG.COM

2 réponses

cs_Cath Messages postés 27 Date d'inscription samedi 13 avril 2002 Statut Membre Dernière intervention 26 novembre 2005
18 sept. 2002 à 01:50
Salut,
Dans ton code, le "T" va se placer à 301, pas à 300.
Essaye plutôt de trouver la position précise de "Salut" avec la fonction Instr. Si tu ne la trouves pas, cherche 0S0a0l0u0t car ton exe contient probablement des chaînes Unicode.
A+
HCath
0
cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 2
1 avril 2003 à 21:21
Non !! Ton éditeur Héxa te donne les offsets en HEXA !!!
Et VisualBasic fonctionne en ... DECIMAL !!

Voila c tout
(Donc si tu as pas compris il faut convertir ton offset en décimal)
0
Rejoignez-nous