中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

VScode能不能編輯DLL庫文件

發布時間:2021-01-07 12:32:33 來源:億速云 閱讀:861 作者:小新 欄目:軟件技術

小編給大家分享一下VScode能不能編輯DLL庫文件,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

我們平時在工作中經常會遇到一些已經被編譯后的DLL,而且更加麻煩的是沒有源代碼可以進行修改,只能針對這個DLL的文件進行修改才能得到我們想要的結果。

本文將通過一個實例來演示:如何完成一個簡單的修改。

我們將會用到以下幾種工具;

1、微軟的工具ildasm.exe:這個是把DLL生成IL文件的一個軟件,是微軟自帶了;可以在C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin找到該軟件;

2、微軟的工具ilasm.exe:這個是把IL文件重新生成DLL的功能,可以在C:\Windows\Microsoft.NET\Framework\v4.0.30319找到該軟件。

要使用ildasm.exe把DLL這個文件轉化成IL文件

VScode能不能編輯DLL庫文件

把dll文件轉儲為*.il文件存到某個指定文件夾里,得到Web.il和Web.res兩個文件,有時也會有*.resource文件

VScode能不能編輯DLL庫文件

我們可以打開Web.il文件,里面有DLL生成的IL內容,我們很容易就可以定位到想要的這個方法,只要讓它固定返回true就可以修改成功,方法內的IL代碼就是我們要修改的內容,修改GetLicense()方法內的IL代碼,讓它固定返回true。

下面這個IL就是讓它返回為true;修改完接著保存IL文件;

VScode能不能編輯DLL庫文件

當修改完IL文件后要把它轉化成DLL文件,打開DOC命令輸入進入到*.il的文件夾,然后輸入命令:

c:\windows\microsoft.net\framework\v4.0.30319\ilasm.exe
 /dll/resource=Web.res Web.il

1:要進入IL文件的文件夾

2:其中"/dll/"這個前面要有一個空格

3:.res文件要在.il文件前面,中間要有個空格

運行完上面的命令后會生成一個新DLL文件,然后把它復制到我們的站點下面:

VScode能不能編輯DLL庫文件

運行的結果:

VScode能不能編輯DLL庫文件

完成上面的步驟就可以成功修改DLL文件,當然本實例只是一個簡單的修改,若要進行比較復雜修改IL代碼則要對IL知識有個相當的了解。

注意 .il文件  每行開頭的IL_0000  是相當于一個內存地址,如果改動涉及到增刪行數的時候  需要注意修改內存地址,如果不方便精確計算,可把修改處后面的地址整體增加整百整千 如IL_333a改成IL_433a。

下面是一個可能會經常要用到的IL返回true跟false的代碼;

    .maxstack 1
    .locals init (
        [0] bool CS$1$0000)
    L_0000: nop 
    L_0001: ldc.i4.1 
    L_0002: stloc.0 
    L_0003: br.s L_0005
    L_0005: ldloc.0 
    L_0006: ret 

return true; 

    // 代碼大小       7 (0x7)
    .maxstack  1
    .locals init ([0] bool CS$1$0000)
    IL_0000:  nop
    IL_0001:  ldc.i4.0
    IL_0002:  stloc.0
    IL_0003:  br.s       IL_0005

    IL_0005:  ldloc.0
    IL_0006:  ret 

return false;

看完了這篇文章,相信你對“VScode能不能編輯DLL庫文件”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

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

AI

卓资县| 随州市| 贵州省| 顺义区| 呼图壁县| 台北县| 武功县| 罗江县| 吉林省| 黑水县| 高清| 宜城市| 湾仔区| 滨州市| 平果县| 伊宁市| 竹北市| 朝阳区| 天镇县| 武乡县| 额济纳旗| 克东县| 吉林省| 齐齐哈尔市| 石渠县| 红安县| 长兴县| 丰宁| 宁蒗| 钟祥市| 新河县| 柳江县| 北票市| 南投市| 徐水县| 额尔古纳市| 边坝县| 勃利县| 鹿邑县| 莱州市| 宝兴县|