背景
總有一些特殊情况,我們沒有源碼,但是某個C#程序集dll或者可執行程序exe影響到我們代碼的正常運行,我們希望得到源碼,能改掉或者修改某些bug,但是苦於沒有源碼,這個時候可以用dnspy進行源碼閱讀和篡改重新編譯。
示例
為了增加趣味性,我們這裏先介紹一下一個女大學生陳依涵,號稱軟件届的手工耿,據說她老師布置作業需要每天發布一款精心制作的軟件,於是從上個月25開始,陳童鞋幾乎就沒怎麼斷更。
她的代錶作 《身高計算器》就是其中之一,被評價是“市面上最准的計算器”、“完全0誤差”的身高計算器!
身高計算器
網友調侃摘錄
截止目前2022年7月3日為止,陳童鞋獲贊近五百萬,並且俘獲了72w粉絲,儼然已經是個小網紅。
示例開始
我們現在模擬陳依涵的代錶作《身高計算器》,使用winform制作了一個身高計算的程序,我們用dnspy在沒有源碼的情况下,制作體重計算程序。
步驟
1、獲取《身高計算》軟件,我上傳到了藍奏雲,https://wwm.lanzoul.com/iyZRR07bemfa
2、下載dnspy,地址:https://github.com/dnSpy/dnSpy
3、打開dnspy,將exe拖動到dnspy主界面
4、編輯類,修改關鍵代碼
這裏我們把calcName改成:體重,點擊編譯
5、保存,這一步如果不保存,則不會對exe或者dll進行修改
6、效果