# Decompiler un VisualBasic



## Pharmacos (25 Mai 2006)

Bonjour à tous !

Je cherche un petit soft me permettant de décompiler un fichier .exe en visual basic !

Forcément comme j'ai switché pour mon joli powerbook 12" et que je n'ai plus de PC,
je cherche un soft sur mac pouvant décompiler un .exe

Si quelqu'un a un décompileur de VB tout simple pour mac je suis également preneur

Merci @ tous

bonne journéé
@++


Pharmacos


----------



## Pascal 77 (25 Mai 2006)

Un décompileur ??? Ils le vendent, ça ? 

Je connais les désassembleurs, mais ils ne peuvent pas te restituer le programme VB d'origine, juste transformer le code binaire en assembleur ! A ma connaissance, ce que tu veux faire n'est pas possible.

Mais comme je ne sais pas forcément tout, je transfère ton fil dans le forum "Développements".


----------



## Pharmacos (25 Mai 2006)

Ben voui ca existe....enfin sur PC......
justement on décompile le visual basic mais uniquement inférieur à VB5
et donc voila, je ne trouve pas mon petit bonheur......

donc si quelqu'un a un p'ti nom de soft, il est le bienvenu....

Mââârci


----------



## Pascal 77 (25 Mai 2006)

En tout cas, à l'exception de sa variante "VBA" liée à Office, Visual Basic n'a jamais été porté sur Mac, donc aucune chance d'y trouver un utilitaire dédié !


----------



## Pharmacos (25 Mai 2006)

C'est vrai.....
y'a realbasic qui s'en approche......

mais bon tant pis alors  

Mârci quand même...

@++


----------



## NightWalker (25 Mai 2006)

Bonsoir,

Je suis currieux de savoir comment on peut "décompiler" ?  tu veux bien dire par décompiler, retourner du binaire en code source ??? Personnellement je dirai que c'est impossible... comment retrouver le nom des procédure/fonctions/variables du code source car une fois compiler on a à faire qu'avec des registres et adresses. Aucune étiquette... Et comment retrouver la structure du programme car une fois compiler les appels vers les procédures sont transformés en branchement (branch/jump) ? En revanche, on peut sans problème désassembler un binaire...


----------



## Pharmacos (25 Mai 2006)

Voila voila un petit lien pour un début d'explication....

http://www.program-transformation.org/Transform/VisualBasicDecompilers

je l'ai fait sur PC il y a quelques années et je me souviens d'avoir récupérer les informations du code source grace a la décompilation......enfin voila faudra que je trouve un PC pour ré essayer....


----------



## Pascal 77 (25 Mai 2006)

En fait, je ne vois qu'une seule explication, un ".EXE" issu de ces versions est en fait du code tokenisé accompagné d'un interpréteur, inclus dans le .EXE. Dans ces conditions, il est possible de retrouver le "source" du programme.

Par contre, si le EXE est un binaire, tout ce qu'il est possible de faire c'est de le désassembler, mais dans ce cas, c'est du code assembleur qui est restitué, pas du basic !


----------



## NightWalker (25 Mai 2006)

Merci pour l'info, je n'ai jamais encore entendu parler d'un décompilateur. Je suis currieux de savoir la similitude des codes décompilés avec les codes d'origine...


----------



## NightWalker (25 Mai 2006)

Pascal 77 a dit:
			
		

> En fait, je ne vois qu'une seule explication, un ".EXE" issu de ces versions est en fait du code tokenisé accompagné d'un interpréteur, inclus dans le .EXE. Dans ces conditions, il est possible de retrouver le "source" du programme.
> 
> Par contre, si le EXE est un binaire, tout ce qu'il est possible de faire c'est de le désassembler, mais dans ce cas, c'est du code assembleur qui est restitué, pas du basic !


Un début de piste ici



> In 1994 he found that *MS had put the sources into the executables compiled* with VB3, and because MS didn't respond to his questions, he decided to publish a simple decompiler to make this fact known to every programmer. This resulted in the VBDis3 decompiler.



C'est fou ça...


----------



## Pascal 77 (25 Mai 2006)

Ben ... Sur du tokenisé, c'est le code d'origine en version épurée (en VB, tu peux avoir plusieurs syntaxes pour certaines opérations, décompilé, il ne doit en renvoyer qu'une, toujours la même, mais à part ça, c'est bien le source d'origine (commentaires non compris) qui est renvoyé.

EDIT : Ah, j'avais pas pensé à ça ... Ça explique l'embonpoint des exécutables générés par VB ! 

Moi, mon hypothèse, c'est qu'ils avaient fait comme pour le "compilateur" des premières versions de GFA Basic sur Atari ST. C'était quand même plus économique comme méthode.


----------

