在Delphi中有没有办法查看所有引用和链接到组件?

时间:2011-12-20 17:33:20

标签: delphi

我正在重构一个大型项目,并且需要将一些组件移动到新模块和表单中。是否有一种明智的方法来确保依赖组件的属性更新?

也许grep项目的dfms?

示例:将TDataSource从巨大的DataModule移动到较小的DataModule。在某些情况下,来源可能是40-50个表格的参考。我需要确保所有引用数据源的控件都得到更新。

4 个答案:

答案 0 :(得分:6)

GEXperts中的GREP允许搜索pas和dfm文件。

答案 1 :(得分:5)

首先,我确定希望您使用版本控制。

我意识到这是一个“如此明显”的答案,但我发现看到所有引用和组件链接的最佳方法是(使用版本控制,以便稍后可以恢复所有更改),重命名属性或组件,然后看看有什么打破。

Pascal Analyzer在这方面帮助不大。

Delphi的重构功能可能会有所帮助(尝试重命名重构,并查看它可以建议它会自动为您重命名的位置)。不要应用更改,只需查看建议。

就“移动而不是重命名”某些控件或资源而言,请问“为什么”这样做。为什么要移动数据源?数据源只是数据感知控件的登陆点,您可以拥有多个指向单个数据集的数据源。为什么不仅移动数据集,并将数据源保留在原来的位置?

答案 2 :(得分:4)

如果您使用的是XE或更高版本,则可以在代码编辑器中右键单击组件名称或其他标识符,然后选择Search for Usages以获取要更新的引用列表。

更新: 不幸的是,这仅适用于源代码引用,并不显示DFM中使用标识符的位置。

答案 3 :(得分:0)

在Delphi或Notepad ++中,为MEGADATAMODULE执行查找,并确保包含整个源分支。那应该找到所有的实例。您还可以使用Notepad ++对所有.dcp,.bpl,.dll和.exe二进制文件进行搜索,以查看可能重新构建的内容。