我有一个.BPG项目,其中包含.DPR项目文件的集合。
现在我看到相同的.PAS文件,更改丢失了。第2步更改的代码丢失了。它只有前面的代码。
BUILD的行为也是一样的。 有人知道这个问题吗?
提前致谢。
更新
还有一个提示:
.DPR项目名称为XX.dll在IDE中,该项目中有一个名为XX_TLB.PAS的文件。在这个文件中,我只尝试更改一些代码,这些代码在编译/构建后恢复。现在我尝试重命名此文件,这给了我一条错误消息
类型库必须具有tlb扩展名。
.DCU和.PAS文件也可以在同一目录中吗?我进入了这个目录(同时存在.PAS和.DCU文件)到"工具 - >选项 - > Delphi选项 - >图书馆 - Win32"
下的目录列表中答案 0 :(得分:3)
XX_TLB.PAS
个文件是受保护的文件。不要直接编辑此类文件。事实上,文件顶部有注释警告您编辑文件。
每次刷新类型库时都会重新生成它们。
请参阅Code Generated When You Import Type Library Information
。
每次编译/构建dll时,IDE都可以完成此刷新。
由于类型库和已注册的com对象的依赖关系,您永远不会编辑此文件。您可以通过类型库编辑器更改com对象本身,也可以创建一个与ActiveX类交互的新单元。
答案 1 :(得分:0)
作为一般规则,Delphi IDE不会撤消更改。有一个明显的例外。当您创建一个空事件处理程序,然后保存源文件时,IDE将删除该事件处理程序。也许这就是正在发生的事情。
我遇到的另一种可能性是你有多个文件副本。我知道以下情况:
最重要的是,除了删除空事件处理程序之外,IDE不会撤消您的更改。因此,您似乎极有可能拥有该文件的多个副本。要了解这一点,您需要获取文件的完整路径。在IDE中,将鼠标悬停在带有文件名的选项卡上,IDE将在提示中显示完整路径。我怀疑你会发现你有两个不同的文件。