一、如果含有強簽名,需要先使用去除強簽名工具,這里使用的是“StrongNameRemove”,點擊修正就可以了,如果沒有強簽名可直接下一步;
二、將沒有強簽名的DLL進行反編譯,並修改;
使用微軟的工具ildasm.exe:就是把DLL轉換成IL文件的一個軟件,打開DLL文件后,轉儲就可以了。我的地址是在C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX4.6.1 Tools\x64\ildasm.exe,找不到可以使用“Everything”工具搜索,非常好用的全盤快速搜索軟件。
轉儲后會生成.il和.res文件(如果含有其他資源文件,也會生成,比如js文件,都可以直接修改)
三、把修改之后的文件重新生成DLL;
使用微軟的工具ilasm.exe:就是把IL文件重新生成DLL的功能,地址C:\Windows\Microsoft.NET\Framework64\v4.0.30319\ilasm.exe。
打開DOC命令並進入到保存.il文件的文件夾,輸入C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX4.6.1 Tools\x64\ildasm.exe /dll/resource=AjaxPro.2.res AjaxPro.2.il(注意地址間的空格,可以復制,再修改;文件夾中的資源文件也會在其中,不用專門寫上)
成功后顯示下圖,即生成為DLL:
四、至此,DLL就修改完成了。我只修改里面的js文件,不修改.il文件,如果需要修改.il文件,需要自己查下關於.il文件的使用。這些方法都只是借鑒思路。
備注:已經強簽名的程序集不能引用未被強簽名的程序集