Связаны ли новые автоматически сгенерированные номера сборки Delphi XE2 с 1.1.2000 00:00:00?

В Delphi XE2 функция автоматически сгенерированных номеров сборки теперь использует какие-то значения, сгенерированные датой и временем, например:

2.4.4386.838

Последний два числа меняются каждый раз при сборке и основаны на текущей дате и времени:

Major = 2 (user defined)
Minor = 4 (user defined)
Release = 4386 (number of days since Jan 1 2000)
Build = 838 (number of seconds since 00:00:00)

Я полагаю, что этот новый формат для номеров выпуска и сборки был заимствован из реализации .NET, которая делает что-то очень похожее. В .net последнее число (Build) равно количеству секунд, прошедших с полуночи по местному времени, разделенному на 2. Подробнее о реализации .net см. По этой ссылке: Жесткое определение даты сборки

Если это можно положиться на то, чтобы оставаться таким, тогда теперь у нас есть лучший способ определить время компиляции вместо

  1. Использование плагинов IDE

  2. Использование хаков PE Headers

Вопрос не в том, как вернуться к старому автоинкременту функциональность номеров версий.

Вопрос : действительно ли XE2 использует дату и время, как я показал выше, начиная с 1 января 2010 года и добавляя дни и секунды в номера сборки и выпуска?

5
задан Warren P 4 January 2012 в 14:46
поделиться