使用Obfuscar对Winform进行代码混淆
开发环境:VS2022 + Winform(.Net Framework 4.6.1),Winform项目A,依赖类库B。
第一步,通过Nuget安装Obfuscar。
第二步,创建obfuscar.xml文件,设置为“如果较新则复制”,其内容如下:
<?xml version='1.0'?> <Obfuscator> <Var name="InPath" value="." /> <Var name="OutPath" value=".\Obfuscator_Output" /> <Var name="KeepPublicApi" value="true" /> <Var name="HidePrivateApi" value="true" /> <Module file="$(InPath)\A.exe" /> <Module file="$(InPath)\B.dll" /> </Obfuscator>
第三步,设置生成后事件命令行:
"$(Obfuscar)" obfuscar.xml
最后,重新生成项目。
注意,对于需要映射字段的类型,需要将其类型设置类为public,否则会因为混淆器将字段改名而映射失败。