0

我只是遇到了一个不知从何而来的问题......在构建项目时,DFM 文件从 Delphi 中读取得很好,但是当我从命令行(dcc32)构建它时,我得到了错误Error: RLINK32: Error reading file "update.dfm" Failed read

更奇怪的是,另一个包含相同文件的项目在 Delphi 和 dcc 中都没有错误。

有没有人知道什么可能导致这样的事情?

我试图从另一个位置构建,仍然一样。

操作系统是 Windows Server 2008。权限似乎是正确的。

4

5 回答 5

1

使用 SysInternals Process Monitor,并观察它何时寻找update.dfm

您可能会看到 DCC32 疯狂地到处搜索update.dfm(除了它所在的地方)。或者它可能会找到它,但会OpenFile因错误而失败。

无论哪种方式:你会发现到底发生了什么。

于 2010-12-07T18:18:22.123 回答
0

要尝试缩小问题的原因,请使用文本编辑器打开 dfm,然后逐渐删除属性并保存,直到构建工作。这至少表明它是否是 dfm 中特定组件的问题。

于 2010-12-03T22:30:06.547 回答
0

dcc32 的主要不同之处在于环境选项中的库路径。当您从 IDE 构建时,将使用它。当您运行 dcc32 时,您需要指定它。

您可以通过为 dcc32 上的 -I 和 -U 选项设置库路径来做到这一点,或者您可以使用 dcc32.cfg 文件来保存构建的所有配置。

RLINK32 可以表示重复资源,因此请考虑重命名其中一种形式以避免冲突。话虽如此,希望库路径可以解决问题。

于 2010-12-07T17:15:15.727 回答
0

我在遇到同样的问题后发现了这个问题,如果我更改=了一些添加复制组件的代码,这似乎不时发生<>我已经改变了其他东西,它再次发生了——这就是我发现这个的原因。作为一个新手,我并没有真正理解这里提到的其他一些内容,但我只是通过在按下F9似乎工作之前先构建项目来发现......至少现在是这样。

希望这对某人有帮助!:)

于 2012-01-31T17:33:57.913 回答
0

当您从枚举类型中删除一个值并且该值正在 dfm 中使用时,我已经看到这种情况发生。下次打开 dfm 时,IDE 会将垃圾文本放在值所在的位置。Delphi 2010 如果有帮助的话。

我会在文本编辑器中打开 dfm 并删除损坏的文本。

于 2012-01-31T18:57:38.653 回答