西西軟件園多重安全檢測(cè)下載網(wǎng)站、值得信賴的軟件下載站!
西西首頁(yè) 電腦軟件 安卓軟件 電腦游戲 安卓游戲 排行榜 專題合集

.net程序反編譯工具(ILSpy)

2.3.0.0 正式版
  • .net程序反編譯工具(ILSpy)2.3.0.0 正式版
  • 軟件大小:1.9M
  • 更新時(shí)間:2018-08-03 09:28
  • 軟件語(yǔ)言:英文
  • 軟件廠商:
  • 軟件類別:國(guó)外軟件 / 免費(fèi)軟件 / 安裝制作
  • 軟件等級(jí):6級(jí)
  • 應(yīng)用平臺(tái):WinAll, WinXP
  • 官方網(wǎng)站:http://www.ilspy.net/
  • 應(yīng)用備案:
好評(píng):50%
壞評(píng):50%

軟件介紹

ILSpy是SharpDevelop小組的反編譯工具,ILSPY這個(gè)開源工具的目的就是代替reflector的,它可以反編譯出比reflector更好的C#代碼。

 NET Reflector 2011 2月已經(jīng)結(jié)束提供免費(fèi)版本,催生了另一個(gè)開源的項(xiàng)目ILSpy。

ILSpy需要.NET Framework 4.0支持。

ILSpy與Reflector的比較:

ILSpy的界面與Reflector相似,左邊以樹型控件顯示程序集和它的類型,右邊是對(duì)應(yīng)的源代碼;A(chǔ)的反編譯功能,與Reflector相比,絲毫不差,甚至有時(shí)候用Reflector無(wú)法反編譯(因?yàn)榧用?的程序集,用ILSpy可以反編譯。 

Decompiler 反編譯器

基礎(chǔ)的類型反編譯功能都具備,現(xiàn)在只支持把源代碼反編譯為C#和IL語(yǔ)言,不支持VB。

.net程序反編譯工具(ILSpy)

當(dāng)需要找的程序集是.NET框架時(shí),可以直接從菜單File—Open from GAC中打開需要查看源碼的程序集。

.net程序反編譯工具(ILSpy).1

代碼保存功能也做得不錯(cuò),當(dāng)點(diǎn)擊一個(gè)類型時(shí),選擇File->Save Code會(huì)反編譯當(dāng)前的類型并保存到指定的文件中,當(dāng)選擇程序集時(shí),Save Code保存為一個(gè)項(xiàng)目(csproj)文件,并且把它所有的類型加到這個(gè)項(xiàng)目中。

Debugger 調(diào)試器

這里要說(shuō)的調(diào)試器,不是指Visual Studio的源碼級(jí)別的調(diào)試器,而是指程序集的調(diào)試器。Reflector有個(gè)Addin,可以直接附加在Visual Studio中,調(diào)試第三方的類型庫(kù),而不需要把第三方的類型庫(kù)反編譯后,以源碼的形式添加到項(xiàng)目中。

ILSpy也有這個(gè)功能,直接對(duì)第三方的程序集進(jìn)行調(diào)試,有兩種選項(xiàng)

如果第三方類型庫(kù)是可執(zhí)行程序(EXE),可以用Debug an executable來(lái)啟動(dòng)這個(gè)程序。

如果第三方類型庫(kù)是程序集(DLL),可以用Attach to running application來(lái)附加,以啟動(dòng)程序集的調(diào)試。

.net程序反編譯工具(ILSpy).2

從上面兩張圖中已經(jīng)可以看出它的用法,和調(diào)試源代碼一樣。在需要監(jiān)視變量值的方法的地方,設(shè)置斷點(diǎn),當(dāng)程序運(yùn)行到此時(shí),就可以通過(guò)監(jiān)視窗體來(lái)觀察變量的值。從ILSpy的狀態(tài)欄中看出,上面的第一張圖是正處于調(diào)試狀態(tài),第二張圖,是準(zhǔn)備就緒,可以進(jìn)行調(diào)試。

這兩者的區(qū)別是,Attach to a running application調(diào)試時(shí),如果代碼經(jīng)過(guò)編譯器優(yōu)化,則監(jiān)視器會(huì)無(wú)法得到它的值。

如圖所示,無(wú)法顯示正在調(diào)試的變量num的值,因?yàn)榇a已經(jīng)經(jīng)過(guò)優(yōu)化。官方推薦的方式是Debug an executable

與在Visual Studio中調(diào)試.NET源代碼一樣,你可以Step into,Step over,continue,同時(shí)狀態(tài)欄會(huì)顯示就緒(stand by),運(yùn)行中(running),正在調(diào)試(debugging)。

除了調(diào)試程序集的C#/VB形式的代碼之外,也可以以IL代碼形式調(diào)試,如下圖所示

由此看來(lái),這還是相當(dāng)不錯(cuò)的調(diào)試IL代碼的工具。工具可以促進(jìn)學(xué)習(xí)的效果,學(xué)習(xí)領(lǐng)悟之后,又可以推進(jìn)工具的發(fā)展,這就是知識(shí)的無(wú)止境的發(fā)展。

ILSpy的debugger是以插件形式存在的,請(qǐng)確保包含ILSpy.Debugger的Plugin。

根據(jù)我們的理解,調(diào)試.NET程序集一定需要PDB文件才可以。然而ILSpy卻沒(méi)有產(chǎn)生PDB文件(no PDB files are generated),而且它不可以調(diào)試ASP.NET Web application和Web 服務(wù)。 

最新評(píng)論查看所有(1)條評(píng)論 >

第 1 樓 甘肅省嘉峪關(guān)市 網(wǎng)友 客人 發(fā)表于: 2013/8/4 11:23:36
可以對(duì).Net可執(zhí)行文件進(jìn)行反編譯操作,并得出相應(yīng)的IL代碼甚至是源代碼,即使是采用混淆工具以及強(qiáng)命名工具也不能從根本上解決問(wèn)題,代碼依然會(huì)很容易地被ILSpy工具反編譯源代碼

支持( 2 ) 蓋樓(回復(fù))

發(fā)表評(píng)論

昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
查看所有(1)條評(píng)論 > 字?jǐn)?shù): 0/500

TOP
軟件下載