Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.12.13;
Скачать: CL | DM;

Вниз

Дата генерации exe в самом exe...   Найти похожие ветки 

 
Layner ©   (2008-12-01 16:41) [0]

Здравствуйте! Как подставить в переменную дату генерации собственного exe? Как константу забивать каждый раз в pas файл не хочется. Есть ли директивы полезные в фигурных скобках {}, или без них обойтись можно?

MessageDlg(Этот exe создали: 1 декабря 2008г.", mtInformation, [mbOk], 0);

Хотелось бы вот усовершенствовать данный код ;)

Заранее благодарю!


 
Сергей М. ©   (2008-12-01 16:49) [1]

Зачем это может понадобиться ?
Неужели не достаточно инф-ции о версии ?


 
Layner ©   (2008-12-01 18:07) [2]

а информация как в версию пишется? Автоматом? Мне надо автозаполнение определенного поля Version Info. (датой).


 
Leonid Troyanovsky ©   (2008-12-01 18:17) [3]


> Layner ©   (01.12.08 18:07) [2]

> определенного поля Version Info. (датой).

Например, сделай себе cmd файл.
Он обновит информацию о времени, скажем, в inc файле,
и скомпилирует новую версию (dcc32.exe).

--
Regards, LVT.


 
Layner ©   (2008-12-01 18:25) [4]

Леонид, спасибо, cmd в расчет не брал, идею понял, как вариант подойдет.


 
Германн ©   (2008-12-02 01:19) [5]

Пока нет системы контроля версий - всё это "мышиная возня"!
Ни номер билда, ни дата/время создания файла ничем не помогут. Только запутают нафиг до полного непонимания!
Плавали, знаем. :)


 
Eraser ©   (2008-12-02 04:19) [6]

> [0] Layner ©   (01.12.08 16:41)

Как то это можно автоматизировать через API IDE, только как не помню, помню, что Джо выкладывал тут пример.


 
Slym ©   (2008-12-02 05:39) [7]

Layner ©   (01.12.08 18:07) [2]
Автоматом

Если нажать Билд проекту то сделает +1...
если Компил то ничего не меняет


 
Плохиш ©   (2008-12-02 10:16) [8]


> Германн ©   (02.12.08 01:19) [5]
>
> Пока нет системы контроля версий - всё это "мышиная возня"!

Если разруха в головах, то никакая система контроля версий не поможет.


 
blackman ©   (2008-12-02 12:31) [9]

function CurrentFileInfo(NameApp : string) : string;
var dump: DWORD;
   size: integer;
   buffer: PChar;
   VersionPointer, TransBuffer: PChar;
   Temp: integer;
   CalcLangCharSet: string;
begin
 size := GetFileVersionInfoSize(PChar(NameApp), dump);
 buffer := StrAlloc(size+1);
 try
  GetFileVersionInfo(PChar(NameApp), 0, size, buffer);

  VerQueryValue(buffer, "\VarFileInfo\Translation", pointer(TransBuffer),
dump);
  if dump >= 4 then
   begin
    temp:=0;
    StrLCopy(@temp, TransBuffer, 2);
    CalcLangCharSet:=IntToHex(temp, 4);
    StrLCopy(@temp, TransBuffer+2, 2);
    CalcLangCharSet := CalcLangCharSet+IntToHex(temp, 4);
   end;

  VerQueryValue(buffer, pchar("\StringFileInfo\"+CalcLangCharSet+
            "\"+"FileVersion"), pointer(VersionPointer), dump);
  if (dump > 1) then
   begin
    SetLength(Result, dump);
    StrLCopy(Pchar(Result), VersionPointer, dump);
   end
  else Result := "0.0.0.0";
 finally
   StrDispose(Buffer);
 end;
end;

...

s:=ExpandFileName(Application.ExeName);
s:=DateTimeToStr(FileDateToDateTime(FileAge(s)));  
s:=s+"  # "+CurrentFileInfo(Application.ExeName);

Конечно это не контроль версий, а дата последней компиляции с версией которую ставим ручками в проекте



Страницы: 1 вся ветка

Текущий архив: 2009.12.13;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.016 c
2-1256583555
HRustBB
2009-10-26 21:59
2009.12.13
TjanXMLParser


2-1256714243
Zheksonz
2009-10-28 10:17
2009.12.13
Наполнение массива при объявлении


1-1228552121
Andrew_New
2008-12-06 11:28
2009.12.13
TDBLookupCombobixEh как сделать толще полосу прокрутки в выпадающ


10-1160194093
zero-g
2006-10-07 08:08
2009.12.13
Delphi 7 + Visio 2003


15-1255594116
ocean
2009-10-15 12:08
2009.12.13
Хочу повесить программу,