前几天接手一个老项目,Delphi5开发,发现里面dfm文件报错,无法编译,很奇怪,用NtPD打开一看,里面都是乱码,看来是碰到所谓的delphi dfm文件乱码问题了。
于是看是想办法恢复,但是总不能每个控件都重新拖一遍吧。
第一着,先去找哪种自动保存的临时文件, .~dfm ,还好有一个文件的临时备份竟然可以用,直接Copy就解决了,一个Form的,但还有一个就死活不行了,.~dfm也是乱码,只能另外想招。
第二招,网络搜了一下,优快云上也说没有办法,很多弟兄被迫全部重新拖一遍控件,惨!
我想偷懒,继续找,呵呵,还真找到一个小工具DfmExplorer.exe ,这个冬冬可救命了。
它可以把DLL或者exe文件里的FORM对应的DFM文件内容完整解析出来,
Copy过去把乱码替换掉,保存,编译,搞定。
如下图: