0

当我尝试在 IDE 中构建一些 DPK 时,它会正确编译并生成适当的 BPL,但是当我尝试使用命令行使用 Delphi 10.2 Tokyo 时,我会收到如下错误:

... .rc(14):错误 RC2132:预期的 VALUE、BLOCK 或 END 关键字

我发现在编译之前,RC 文件看起来像:

1 VERSIONINFO
FILEVERSION 1,0,0,0
PRODUCTVERSION 1,0,0,0
FILEFLAGSMASK 0x3FL
FILEFLAGS 0x00L
FILEOS 0x40004L
FILETYPE 0x1L
FILESUBTYPE 0x00L
BEGIN
    BLOCK "StringFileInfo"
    BEGIN
         BLOCK "040904E4"
         BEGIN
              VALUE "FileVersion", "1.0.0.0\0"
              VALUE "ProductVersion", "1.0.0.0\0"
         END
    END
    BLOCK "VarFileInfo"
    BEGIN
         VALUE "Translation", 0x0409, 1252
    END
END

但是在构建失败后尝试Delphi将其更改为:

1 VERSIONINFO
FILEVERSION 1,0,0,0
PRODUCTVERSION 1,0,0,0
FILEFLAGSMASK 0x3FL
FILEFLAGS 0x00L
FILEOS 0x40004L
FILETYPE 0x1L
FILESUBTYPE 0x00L
BEGIN
    BLOCK "StringFileInfo"
    BEGIN
         BLOCK "040904E4"
         BEGIN

因此,出于某种原因,Delphi 试图覆盖 RC 文件但在中间停止并且无法解析它。

这种奇怪行为的原因是什么?

PS:这是Delphi IDE在创建DPK工程时生成的标准RC文件。我没有对其进行任何更改。

我已经尝试将其删除并使用 IDE 重新创建。

我无法告诉您使用哪个命令来生成 BPL,因为我使用 FinalBuilder 8 来执行此操作

4

2 回答 2

2

感谢@DavidHeffernan 的评论,我再次检查了一下,结果发现问题出在 Final Builder 重新生成资源文件上。

当我在最终构建器操作中取消选中“版本信息”和“重新生成资源”时,一切正常。

现在我不知道究竟是什么导致了最终生成器中的问题,但是禁用这些选项对我来说确实有效

在此处输入图像描述

于 2017-09-13T09:20:19.687 回答
1

这很可能是 Tokyo 设置的默认版本信息变量的问题 - 请参阅Delphi 版本信息错误

于 2017-09-13T13:21:27.727 回答