2011-04-14 141 views
1

我想了解反彙編的一個C#程序使用objdump,因爲我使用的是不顯示反彙編的vsiaul c#2008 express版本。跟蹤反彙編一個C#程序

我運行下面的命令來獲得輸出:

objdump -S ConsoleApplication4.exe 

,因爲我無法確定我的功能可待因拆卸輸出,我把虛擬變量爲0x1234的值。

public static void myfun() 
    { 
     int i; 
     i = 0x1234; 
     Console.WriteLine(i.ToString()); 
    } 

但是,我無法在生成的文件的任何位置找到1234的值!我嘗試了其他選項,如objdump的-t或-T,但它表示找不到符號表。有人可以告訴如何使用objdump來查看反彙編函數,或者如果有其他一些免費工具?

編輯:我知道MSIL disassmbler的,我想知道彙編語言等效請..

+0

這與C++有什麼關係?可能還想添加'disassembly'標記。 – Xeo 2011-04-14 00:30:48

回答

2

除非你NGEN'd您的應用程序,它沒有任何意義拆卸成自MSIL彙編語言,直到它在運行時實時編譯沒有編譯成x86代碼。