gpt4 book ai didi

delphi - 什么是 .vrc 文件,它是如何生成的,您可以使用 IDE 将其删除吗?

转载 作者:行者123 更新时间:2023-12-03 14:38:07 25 4
gpt4 key购买 nike

我正在尝试安装一个名为 JamShellBrowser 的商业组件,但它无法安装。

我已经联系了开发者,但同时我想知道:

  1. 什么是 vrc 文件?
  2. 它是如何生产的?
  3. 可以用Delphi XE4 IDE来控制或修改吗?

我检查了 IDE 的帮助,但找不到任何有关 vrc 文件的信息,并且搜索了 Delphi vrc,但没有找到任何对我有帮助的内容。

错误信息是:

Checking project dependencies...

Compiling JamShellDelphiXE4.dproj (Release, Win32)

brcc32 command line for "JamShellDelphiXE4.vrc"

c:\program files (x86)\embarcadero\rad studio\11.0\bin\cgrc.exe -c65001 JamShellDelphiXE4.vrc -foJamShellDelphiXE4.res

[BRCC32 Error] JamShellDelphiXE4.vrc(2): file not found: JamShellDelphiXE2_Icon.ico

Failed

Elapsed time: 00:00:00.1

我在组件文件夹中搜索了 ico 文件,但没有...因此出现该消息,但即使我从 vrc 文件中删除行 MAINICON ICON "JamShellDelphiXE2_Icon.ico" 或甚至删除我尝试安装时自动生成的 vrc 文件。

几个月前我从 Delphi 2010 迁移到 XE4,注意到明显新的 vrc 文件,但我不知道它是什么或如何处理这些文件。

最佳答案

一个.vrc是由 Delphi MSBuild 进程创建的临时文件,用于编译资源文件 (.res),该资源文件将链接到最终的二进制输出中。它被传递到 CodeGear 资源编译器/绑定(bind)器 (cgrc.exe) 并在构建过程后删除。

它不会出现在 .dproj 文件中的任何位置。此行为来自BuildVersionResource目标,从 $(BDS)\Bin\CodeGear.Common.Targets 导入。如果您想更好地了解构建过程,请查看此文件(以及 CodeGear.Delphi.Targets )。

正在删除<Icon_MainIcon>来自 .dproj 的标记还不够,因为 VERSIONINFO 资源还可以强制创建 .vrc 文件(我相信“vrc”代表“版本资源”,尽管它也用于应用程序中的主图标)。

对于包,Delphi 总是将版本信息放在包项目中。对于包项目,“包含版本信息”IDE 选项将被忽略。

所以,如果你(像我一样)

  • 不要依赖 Delphi IDE 来设置应用程序主图标
  • 不要依赖Delphi IDE来设置版本信息资源;和
  • 设法包含您自己的所有资源文件

您可以通过设置SkipResGeneration来完全禁用它的创建。至true在你的 msbuild 调用中。例如:

msbuild.exe myProject /t:Build /p:Config=Release /p:SkipResGeneration=true

但是,这仅适用于基于 MSBuild 的构建。我不知道如何对 Delphi IDE 的构建执行相同的操作。

关于delphi - 什么是 .vrc 文件,它是如何生成的,您可以使用 IDE 将其删除吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19593566/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com