我正在运行RAD Studio Delphi XE2。我的一个.pas文件似乎有些奇怪。我的unit1.pas中的许多线路都被简单的'º'取代而其他线路丢失了。我留下了原始文件中间某处的一小段代码。我可以通过某种方式反编译unit1.dcu来获取原始的unit1.pas吗?
另外,为什么会发生这种情况?你以前听说过这个吗?代码运行但很明显,我无法编辑任何我看不到的内容。
答案 0 :(得分:5)
即使你可以反编译它,也可能是与原版相比难以维护的混乱。
相反,请尝试查看项目的__History
文件夹。您应该找到旧版本的代码。选择最新的; - )
为什么会发生这种情况?
有很多原因。 IDE中的错误? IDE插件或自定义组件中的错误? 你的代码中的错误可能会覆盖源文件吗?
答案 1 :(得分:2)
您无法将.dcu文件反编译为原始来源。从源代码到可执行代码的转换中丢失了信息。类型声明,变量名,方法名,代码布局等在编译器的输出中根本不存在。编译是一种单向过程。
如果您使用版本控制,您将能够从存储库中提取最新版本。如果您不使用版本控制,那么您刚刚学到了很多教训,如果没有版本控制,您将再也不会尝试进行软件开发。