2010-03-26 6 views
1

Est-il possible de compiler un .cs directement en code x86? Je veux dire, je veux observer ce qui s'est passé avec IDA Pro, donc je ne voulais pas de code IL mais du code ASM.. Compilation NET sans JIT possible?

Merci

+1

Pourquoi? Qu'essayez-vous de faire? – SLaks

+0

Je veux observer les internes – Thomas

+0

Donc j'ai besoin de code x86, pas de code IL .. Je peux le faire avec windbg, mais je préfère vraiment IDA ... – Thomas

Répondre

4

Jetez un oeil à Ngen.exe.

+0

J'ai essayer un: ngen.exe/install myprogram.exe Mais à côté avec l'IDA, j'ai le code IL, pas x86 .. :( – Thomas

+1

Ngen va installer l'image native généralement dans votre répertoire Windows sous/assembly/NativeImages ou quelque chose comme ça.Voyez-vous votre programme là-bas? Une autre option pour afficher l'assembly que je préfère est d'activer l'adresse Débogage au niveau des options de débogage de Visual Studio et utilisation des fenêtres de débogage fournies – MikeB

+0

Oui J'ai regardé dans WINDOWS \ assembly \ nativeimages ... mais ensuite, c'est le code IL Je ne pense pas que ce soit possible, ou plus simple de trouver la spécification si je veux étudier les internes. – Thomas

1

IDA ne chargera pas les pièces natives des assemblages NGEN, malheureusement. La seule façon que j'ai trouvée était d'utiliser le débogueur Visual Studio. Si vous n'êtes pas particulièrement intéressé par les composants internes du framework Microsoft .NET, mais aussi par tous les autres JIT, vous pouvez jouer avec mono -aot, qui produit des exécutables PE ou ELF normaux (et même les sources assembleur lisible).).

Questions connexes