Форум: "Начинающим";
Текущий архив: 2009.10.25;
Скачать: [xml.tar.bz2];
ВнизПолучить от компилятора текущую дату в констатнту, как? Найти похожие ветки
← →
sanx (2009-09-02 13:11) [0]Нужно для вывода инфы о дате компиляции. Хочу автоматизировать это. Сейчас пишу вручную :( Если ли директивы компилятора, которые смогут такое? Или может другой какой способ?
← →
Сергей М. © (2009-09-02 14:26) [1]http://www.delphikingdom.com/asp/viewitem.asp?catalogid=899
см. AfterCompile
← →
Rouse_ © (2009-09-02 14:50) [2]Ну можно снять данные с уже сбилженного файла:
function GetPEDate(FileName: string): TDateTime;
var
F: TMemoryStream;
ImageDosHeader: TImageDosHeader;
Signature: DWORD;
ImageFileHeader: TImageFileHeader;
begin
Result := 0;
F := TMemoryStream.Create;
try
F.LoadFromFile(FileName);
F.Position := 0;
F.Read(ImageDosHeader, SizeOf(TImageDosHeader));
if ImageDosHeader.e_magic = IMAGE_DOS_SIGNATURE then
begin
F.Position := ImageDosHeader._lfanew;
F.Read(Signature, SizeOf(DWORD));
if Signature = IMAGE_NT_SIGNATURE then
begin
F.Read(ImageFileHeader, SizeOf(TImageFileHeader));
Result := EncodeDate(1970, 1, 1) +
ImageFileHeader.TimeDateStamp / SecsPerDay;
end;
end;
finally
F.Free;
end;
end;
← →
sanx (2009-09-02 18:04) [3]Rouse_ сделал так DateToStr(GetPEDate(ParamStr(0))), вывело 19.06.1992, в чем может быть ошибка? Использую D2006, WinXP SP3, русская локаль :)
Сергей М., спасибо за ссылку, очень интересная тема.
← →
Rouse_ © (2009-09-03 09:30) [4]
> вывело 19.06.1992, в чем может быть ошибка?
Хм, ну ошибка может быть только в том что по всей видимости тогда D2006 не прописывает время билда. на 2007-ой все нормально выводится, правда в формате GMT +0 (т.е. нужно переводить еще на текущее время)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.10.25;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.049 c