淡泊名利 宁静致远

飘飘何所似,天地一沙鸥!

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

因版本变动,新版本未开发完,老版本中有个写死的字符串有个别字要替换(设计缺陷)。

首先想到ildasm,将dll反编译成il。

通过源程序定位到需要修改的部分。

发现中文字符串在il中是十六进制字符。

通过几个编码工具比较,最终得出结论:中文经过unicode编码,并简单混淆。

如“你好”,unicode编码 是4F60 597D,在il中是 60 4F 7D 59

 

 

将需要替换的文字的编码倒装一下替换到il中。

保存il文件,重新编译,用vs命令行:

ilasm.exe /dll /resource=***.res ***.il

其中/dll是指编译成dll,/resouce资源文件(ildasm时自动生成)。

 
提供一个汉字unicode编码遍 http://www.chi2ko.com/tool/CJK.htm (ctrl+F查找) 
 
 
 
posted on 2014-09-10 10:40  陈无心  阅读(252)  评论(0)    收藏  举报