Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.012 c
2-1256138283
Дедушка мазай
2009-10-21 19:18
2009.12.13
Как отключить правую кнопку мыши


15-1255613662
Аркадий_малый
2009-10-15 17:34
2009.12.13
Сайт


2-1256322344
Pascal96
2009-10-23 22:25
2009.12.13
CopyPaste в Borland Pascal 7.0


2-1256704986
JohnLemon
2009-10-28 07:43
2009.12.13
киньте плиз ссылочку на документацию FastReport или QuickReport..


2-1256031787
kyn66
2009-10-20 13:43
2009.12.13
Глюк компонента TCheckBox ?




   Наверх