使用dnSpy對無源碼EXE或DLL進行反編譯並且修改

背景

      總有一些特殊情況,我們沒有源碼,但是某個C#程序集dll或者可執行程序exe影響到我們代碼的正常運行,我們希望得到源碼,能改掉或者修改某些bug,但是苦於沒有源碼,這個時候可以用dnspy進行源碼閱讀和篡改重新編譯。

示例

    為了增加趣味性,我們這裡先介紹一下一個女大學生陳依涵,號稱軟件屆的手工耿,據說她老師布置作業需要每天發佈一款精心製作的軟件,於是從上個月25開始,陳童鞋幾乎就沒怎麼斷更。

她的代表作 《身高計算器》就是其中之一,被評價是「市面上最準的計算器」、「完全0誤差」的身高計算器!

身高計算器

 

網友調侃摘錄

 

截止目前2022年7月3日為止,陳童鞋獲贊近五百萬,並且俘獲了72w粉絲,儼然已經是個小網紅。

 

 

示例開始

我們現在模擬陳依涵的代表作《身高計算器》,使用winform製作了一個身高計算的程序,我們用dnspy在沒有源碼的情況下,製作體重計算程序。

 

 

步驟

1、獲取《身高計算》軟件,我上傳到了藍奏雲,//wwm.lanzoul.com/iyZRR07bemfa

2、下載dnspy,地址://github.com/dnSpy/dnSpy

3、打開dnspy,將exe拖動到dnspy主界面

4、編輯類,修改關鍵代碼

 

 這裡我們把calcName改成:體重,點擊編譯

5、保存,這一步如果不保存,則不會對exe或者dll進行修改

 

 

6、效果