網上百度一下Dotfuscator Professional Edition 4.96 下載,會找到很多鏈接鏈接地址,
安裝后,首先對應設定一下
把DisableStringEncryption設為NO,
1:即啟用字串加密;檢查DisableControlflow、DsiableRenaming也為NO,即保證控制流和混淆功能打開,其他默認,如下圖:

2:Rename選項勾選“useenhancedoverloadinduction”(使用增強模式),注意:不要勾選下方的“Donotsuppressonserializabletypes”,即序列化型別的變數不加密,否則編譯后可能例外;“RenamingScheme”選擇“Unprintable”(不可列印字符,即亂碼),也可以選擇其他如小寫字母、大寫字符、數字的方式,如下圖:
3:String Encryption選項include里勾選需要字串加密的工程檔案EXE、DLL等,點擊Build,之后就可以啦:

點擊這個播放按鈕即可生成:

報錯了, 報錯資訊如下:
Could not find a compatible version of ildasm to run on assembly F:\xxx\bin\gumuweb.dll. This assembly was originally built with .NET Framework v4.0.30319. Build Error.
這個可能是你的.Net Framework 可能在4.0或者以上,所以你要配置一下相關資訊
要混淆不同的.Net Framework版本需要在Settings,Project Properties,添加配置如下,
其中ILASM和ILDASM后面必需要加上對應版本的版本號,然后檔案參考對應的版本檔案即可,
ILASM_v4.0.30319
C:\Windows\Microsoft.NET\Framework\v4.0.30319\ilasm.exe
ILDASM_v4.0.30319
C:\Program Files\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\ildasm.exe
正常大部分用戶的對應資訊都是在以上位置,我以前電腦安裝的是vs2015也是在以上位置,另外一臺電腦安裝的vs2019,以上位置就不對了,所以你對應去C:\Program Files (x86)\Microsoft SDKs\Windows\這個位置找下,我找到了,位置如下:
C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools\ildasm.exe
這個時候頭頭一暈,浪費了小半個小時,以為版本不一樣了,檔案名可以更改一下成對應的版本,結果報錯了,最后不斷嘗試和百度,最后發現這個后面的版本號必須跟ILASM_的版本號對應,不能改,
記住,記住、記住、Name不要改就用上面的,你后面對應的檔案版本不一樣沒有關系,
終于成功了!

被混淆的檔案同級會有一個Dotfuscated這樣的檔案夾,點擊進去就能發現已經被混淆的bll檔案,
加密后的效果 如下:

本文來自博客園,作者:古道輕風,轉載請注明原文鏈接:https://www.cnblogs.com/88223100/p/Dotfuscator_usage_guide.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/393824.html
標籤:C#
