Скрипты автоматической сборки - PullRequest
1 голос
/ 14 марта 2009

Как увеличить версию в файлах проекта для проектов Delphi. Я использую Delphi 10 для разработки приложений win32. Я состоит из файлов bdsproj, dpr & res для проекта.

Ответы [ 8 ]

4 голосов
/ 14 марта 2009

Если вы используете delphi для сборки своего приложения, вы можете включить автоинкремент buildnumber в настройках проекта.

Мы используем самодельную утилиту для генерации ресурса версии (rc-файла) на основе значений в ini-файле. Затем мы компилируем rc-файл в res-файл, который мы включаем в проект. Мы используем finalbuilder-scripts для автоматизации процесса. Я знаю, что у finalbuilder есть собственная поддержка номеров версий, но мы ее не используем. Я не знаю почему, хотя ...

3 голосов
/ 16 марта 2009

Ранее я использовал программу под названием StampVer . Для использования StampVer в файле уже должна быть информация о версии. StampVer является бесплатным, но не открытым исходным кодом.

Хорошая вещь о stampver в том, что он может автоматически увеличиваться для вас.

2 голосов
/ 16 марта 2009

Я использую подходящий инструмент сценария сборки FinalBuilder , который имеет набор команд управления свойствами, которые могут устанавливать все элементы в сборке на одну и ту же версию. Это дает мне согласованность нумерации по сборке, а также большую нагрузку. Если у вас нет подходящего инструмента для сборки и вы все еще используете пакетные файлы или эквивалентные файлы, сейчас самое время взглянуть на параметры. Хорошо стоит сделать.

1 голос
/ 22 июня 2010

Прочитать эту статью http://www.thedelphigeek.com/2008/01/tdm-rerun-2-better-build-process.html Примоз Габриелчич, первоначально опубликованный в журнале Delphi. Он содержит полное описание того, что вам нужно сделать.

1 голос
/ 14 марта 2009

Я использую программу, которая управляет номером версии в файле .ini и создает файл .res в событии предварительной сборки проекта. Этот файл .res содержит только версию, а не значок. Значок содержится в отдельном файле .res. Оба включаются в файл проекта dpr:

{$R *_version.res}
{$R *_icon.res}

Только проверенный файл * __ i_con.res проверяется в исходном контроле, версия, как сказано выше, сохраняется в файле .ini, поэтому файл * _version.res может быть сгенерирован при необходимости. Это избавляет от раздражения постоянно меняющихся файлов .res и .dproj из-за увеличения номера сборки.

О, я только что понял, что вы сказали "Delphi 10", который, я думаю, Delphi 2006. Эта версия Delphi не имела событий до и после сборки, поэтому вам придется вызывать программу для поддержки версии самостоятельно .

0 голосов
/ 22 июня 2010

Нужно ли увеличивать номер сборки при компиляции из IDE или снаружи? IDE может увеличивать его автоматически, просто отметьте флаг в настройках проекта. Увеличение этого числа за пределами IDE не является простым, поскольку оно хранится в файле .res по умолчанию, который управляется и восстанавливается IDE. Компилятор командной строки не изменит его. Есть несколько способов изменить его (как объясняется в другом ответе), и обычно он лучше всего работает с системой сборки, которая может генерировать номера сборки, особенно если над проектом работают более одного разработчика. Я опубликовал вопрос QC # 70564, чтобы узнать, какая информация о версии может быть установлена ​​компилятором командной строки.

0 голосов
/ 16 марта 2009

DDevExtensions содержит инкремент сборки, я не уверен, как получить версию Delphi 2006, но я думаю, что она существует, и это довольно удобная штука.

0 голосов
/ 14 марта 2009

Если вы ищете не-графический способ сделать это, то я думаю, что если вы посмотрите в файле bdsproj, вы найдете раздел в xml, где написана версия, вы можете изменить его здесь. В следующий раз он будет использовать эту версию.

...