Что такое a.vrc файл, как генерируется и вы можете удалить его с помощью IDE?

Я пытаюсь установить коммерческий компонент под названием JamShellBrowser, но он не будет установлен.

Я связался с разработчиком, но между тем я хотел бы знать:

  1. что такое файл vrc?
  2. как Он производится?
  3. можно ли управлять или изменять его с помощью IDE Delphi XE4?

Я проверил справку IDE, но я не мог найти ничего о файлах vrc, и я искал Delphi vrc и ничего не нашел это мне поможет.

сообщение об ошибке:

проверка зависимостей проекта...

Компиляция JamShellDelphiXE4.dproj (Release, Win32)

командная строка brcc32 для " JamShellDelphiXE4.vrc"

c:program файлы (x86)embarcaderoRAD studio11.0bincgrc.exe-c65001 JamShellDelphiXE4.vrc-foJamShellDelphiXE4.res

[ошибка BRCC32] JamShellDelphiXE4.ПТС(2): файл не найден: JamShellDelphiXE2_Icon.ico

ошибка

затраченное время: 00:00:00.1

Я искал в папках компонентов файл ico, но его нет... таким образом, сообщение, но даже если я удалить строку MAINICON ICON "JamShellDelphiXE2_Icon.ico" из файла vrc или даже удалить файл vrc он автоматически генерируется при попытке установить.

я переехал из Delphi 2010 в XE4 несколько месяцев назад и заметил, по-видимому, новый файл vrc, но я не знаю, что это такое или как для обработки этих файлов.

3 ответов


Я считаю, что это встроенное поведение IDE Delphi XE4 и XE5, возможно, вызванное ошибкой обновления. Генерация файлов VRC-это то, что вы не можете отключить, за исключением удаления тегов в файле dproj, которые вызывают его создание.

если был способ исправить или удалить его, это может включать сравнение вашего файла dproj с другим файлом dproj и поиск чего-то, что подходит только для a .ДПР.+проект dproj, который каким-то образом попал в ваш .dpk+.dproj по проект, как <Icon_MainIcon>.

похоже, что это промежуточный файл, который автоматически генерируется при a .ДПР.+проект dproj имеет некоторую информацию о версии, которая должна быть записана из .файл dproj и во временное расположение, а затем скомпилирован и связан с вашим приложением в качестве информационного ресурса версии. Тем не менее, я также видел, как он генерируется для a .dpk+.проект dproj, и это меня тоже озадачивает.

Он также содержит ресурс для вашего приложения по умолчанию значок и информация о версии, а также пакеты обычно не имеют ресурса значков versioninfo или приложений.

что я считаю, возможно, ошибка в том, что нет пользовательского интерфейса в Delphi IDE, чтобы позволить вам установить значок приложения пакета. Тем не менее, я иногда получаю .VRC и an .Файл ICO. Но я не знаю исправления, кроме как сообщить о проблеме в центр качества Embarcadero.

С a .проект dproj, a .Промежуточный файл VRC имеет хоть какой-то смысл. Я вижу следующее содержание: информация о версии, значок приложения и стили VCL (т. е. AquaLightSlate.ВСФ) увязку ресурсов.


A .vrc - Это временный файл, созданный процессом Delphi MSBuild для компиляции файлов ресурсов (.res), который будет связан в конечном двоичном выходе. Он передается Компилятор/Связыватель Ресурсов CodeGear (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 to true в вашем вызове msbuild. Например:

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

однако это работает только для сборок на основе MSBuild. Я не знаю, как сделать то же самое для сборок из Delphi IDE.


просто откройте @PROJECT@.dproj в любом файле текстового редактора и найти строки

<Icon_MainIcon>@PROJECT@_Icon.ico</Icon_MainIcon>

и удалить их. Вы найдете один на цель сборки. Сохраните файл, и вы сделали.

Edit: исходный ответ относится к.файл DPR, однако обратите внимание на раздел "Изменить" в .поэтому я обновил ответ выше, чтобы отразить это.