亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ILSpy反編譯工具的使用

發布時間:2020-07-18 17:18:05 來源:網絡 閱讀:2336 作者:GuangYao_Li 欄目:開發技術

ILSpy反編譯工具的使用
本文導讀:ILSpy反編譯工具的使用。不過,ILspy需要在電腦上安裝.NET Framework 4.0。ILspy可以將一個dll文件轉換為C#或VB語言。ILspy對于單個文件可以保存為.cs文件或.vb文件,當文件較多時,可以選擇保存為項目文件。C#語句可被ILspy反編譯出來,并可支持yield return語句和 lambdas表達式的反編譯。

文件結構截圖
ILSpy反編譯工具的使用

ILspy的界面截圖

ILSpy反編譯工具的使用

ILSpy的界面與Reflector相似,左邊以樹型控件顯示程序集和它的類型,右邊是對應的源代碼。基礎的反編譯功能,與Reflector相比,絲毫不差,甚至有時候用Reflector無法反編譯(因為加密)的程序集,用ILSpy可以反編譯。

ILspy需要在電腦上安裝.NET Framework 4.0.

ILspy常用的幾個功能

基礎的類型反編譯功能都具備

現在只支持把源代碼反編譯為C#和IL語言,不支持VB。

ILSpy的代碼保存功能

當點擊一個類型時,選擇File->Save Code會反編譯當前的類型并保存到指定的文件中,當選擇程序集時,Save Code保存為一個項目(csproj)文件,并且把它所有的類型加到這個項目中。

ILSpy的調試器功能

這里要說的調試器,不是指Visual Studio的源碼級別的調試器,而是指程序集的調試器。Reflector有個Addin,可以直接附加在Visual Studio中,調試第三方的類型庫,而不需要把第三方的類型庫反編譯后,以源碼的形式添加到項目中。

ILSpy也有這個功能,直接對第三方的程序集進行調試,有兩種選項

如果第三方類型庫是可執行程序(EXE),可以用Debug an executable來啟動這個程序。

如果第三方類型庫是程序集(DLL),可以用Attach to running application來附加,以啟動程序集的調試。

ILSpy反編譯工具的使用

從上圖中已經可以看出它的用法,和調試源代碼一樣。在需要監視變量值的方法的地方,設置斷點,當程序運行到此時,就可以通過監視窗體來觀察變量的值。

這兩者的區別是,Attach to a running application調試時,如果代碼經過編譯器優化,則監視器會無法得到它的值。

如圖所示,無法顯示正在調試的變量num的值,因為代碼已經經過優化。官方推薦的方式是Debug an executable

與在Visual Studio中調試.NET源代碼一樣,你可以Step into,Step over,continue,同時狀態欄會顯示就緒(stand by),運行中(running),正在調試(debugging)。

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

ILSpy反編譯工具的使用

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

不過調試.NET程序集一定需要PDB文件才可以。然而ILSpy卻沒有產生PDB文件(no PDB files are generated),而且它不可以調試ASP.NET Web application和Web 服務。

軟件下載地址:http://down.51cto.com/data/2455152

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

肃南| 大连市| 宜君县| 高平市| 出国| 子洲县| 景德镇市| 淮南市| 平利县| 盐城市| 达尔| 望奎县| 甘洛县| 吴桥县| 河源市| 墨脱县| 岚皋县| 运城市| 巴林左旗| 慈利县| 京山县| 仁寿县| 湟源县| 昌宁县| 洪江市| 邹城市| 镇远县| 沂源县| 锡林郭勒盟| 顺平县| 吴忠市| 内黄县| 黄大仙区| 江口县| 绥化市| 苏尼特右旗| 湟源县| 博兴县| 洛浦县| 南城县| 锦屏县|