CSFramework开发框架使用.NET Reactor加壳软件导致多语言失效|C/S开发框架

CSFramework开发框架使用.NET Reactor加壳软件导致多语言失效
CSFramework国际化多语言原理
- 每条语言资料对应一个唯一的对象标识(ObjectID);
- 通过枚举窗体的组件成员名称,读取.Text属性值,并自动生成语言资料;
- 用户维护LanData资料,界面显示修改后的内容;
- 对象类型(ObjectType)分为Message(消息)和Control(控件);

原因:使用 Obfuscation 混淆

使用 ILSpy查看代码,发现组件名称全部混淆改名

语言资料库的数据:

原因:使用 Obfuscation 混淆每次生成新的组件名称,导致设定好的多语言资料无法匹配组件名称。
解决方案
若使用国际化多语言,只需要勾选 NecroBit 和 AntiILDASM

代码保护后保留窗体的组件名称

扫一扫加作者微信