我正在尝试使用一组显然存在依赖性问题的包来解决问题。偶尔在 Build All 期间,我会收到此错误:
Delphi“E2161 错误:RLINK32:打开文件 ________.drf 时出错”
它是什么意思/指示,什么是“drf”文件?
我正在尝试使用一组显然存在依赖性问题的包来解决问题。偶尔在 Build All 期间,我会收到此错误:
Delphi“E2161 错误:RLINK32:打开文件 ________.drf 时出错”
它是什么意思/指示,什么是“drf”文件?
除了在编译包时解决“找不到 drf 文件”问题一文外,我还遇到了Delphi 错误报告 #44134,其中一位评论者提到问题源于您的 .dpk 文件与您的 .dpk 文件位于同一目录中。当同一目录位于库路径中并启用“根据需要重建”时,pas 文件。
因此,您可以通过三个选项来解决此问题:
*.dpk
, *.dproj
) 放入单独的目录,然后重新安装包。我已经做到了,并且成功了。看起来这是主要的问题/解决方案。
打开您拥有源代码的所有包,并指定编译选项:“显式重建”而不是“需要时重建”。
嗯……没听说过。我刚刚搜索了激发您链接到的问题的项目,并且没有任何带有“DRF”扩展名的内容。在这里检查并没有发现任何与 Delphi 相关的内容。但事实上这是一个链接器错误,而不是编译器错误,这让我猜测前两个字母代表“Delphi Resource”。
尝试搜索项目的目录树,看看是否可以找到任何带有 DRF 扩展名的内容。如果是这样,请尝试使用文本编辑器打开它,看看它是否可读,如果不是,如果您知道有关读取二进制文件格式的任何内容,请尝试使用十六进制编辑器。看看你能不能理解它。
如果你没有找到任何东西,那么 Delphi 可能是从它正在编译的代码中的某个地方得到它的。尝试在您的目录树上运行 grep 搜索“DRF”,看看它是否出现任何结果。
来自http://www.delphifaq.com/faq/delphi/delphi_ide/f157.shtml:
使用包编译时,可以指定应考虑链接哪些包。项目的包要求存储在一个带有 .DRF 扩展名的临时 Windows 资源文件中。
无论带有许多下划线的文件是什么,链接器最有可能在它认为的临时目录中搜索它(您可以使用filemon确认这一点)。DelphiFaq 的解释是错误定义的 %TEMP% 是罪魁祸首,这很可能是任何原因。
有时问题是文件访问权限。
一种解决方法是以管理员身份运行 Delphi。