Форум: "Основная";
Текущий архив: 2002.05.23;
Скачать: [xml.tar.bz2];
ВнизВерсия проекта Найти похожие ветки
← →
sammy (2002-05-14 09:06) [0]Помогите пожалуста разобраться с установкой версии.
У меня конкретно 2 вопроса:
1) где выставляется флаг Auto Increment для автоматического
увеличения версии проекта на каждом билде?
2) как достать версии моего проекта во время выполнения?
minor, major, Revision
← →
Игорь Шевченко (2002-05-14 10:18) [1]День добрый,
1) В Project Options/Version Info. Хранится этот флаг, разумеется
в .dof файле для проекта:
[Version Info]
IncludeVerInfo=1
AutoIncBuild=1
2)
procedure GetFileVersion(FileName: string; var Major1, Major2,
Minor1, Minor2: Integer);
{ Helper function to get the actual file version information }
var
Info: Pointer;
InfoSize: DWORD;
FileInfo: PVSFixedFileInfo;
FileInfoSize: DWORD;
Tmp: DWORD;
begin
Major1 := 0;
Major2 := 0;
Minor1 := 0;
Minor2 := 0;
// Get the size of the FileVersionInformatioin
InfoSize := GetFileVersionInfoSize(PChar(FileName), Tmp);
// If InfoSize = 0, then the file may not exist, or
// it may not have file version information in it.
if InfoSize = 0 then
Exit;
// Allocate memory for the file version information
GetMem(Info, InfoSize);
try
// Get the information
GetFileVersionInfo(PChar(FileName), 0, InfoSize, Info);
// Query the information for the version
VerQueryValue(Info, "\", Pointer(FileInfo), FileInfoSize);
// Now fill in the version information
Major1 := FileInfo.dwFileVersionMS shr 16;
Major2 := FileInfo.dwFileVersionMS and $FFFF;
Minor1 := FileInfo.dwFileVersionLS shr 16;
Minor2 := FileInfo.dwFileVersionLS and $FFFF;
finally
FreeMem(Info, FileInfoSize);
end;
end;
var
VersionMajor: Integer;
VersionMinor: Integer;
Release, BuildNumber: Integer;
begin
if FileExists(Application.ExeName) then
GetFileVersion(Application.ExeName, VersionMajor,
VersionMinor, Release, BuildNumber);
....
С уважением,
← →
sammy (2002-05-14 10:33) [2]Спасибо большое!
Вы мне очень помогли!
← →
sammy (2002-05-14 10:42) [3]Sorry, еще небольшой вопросик:
узнавать версию по "эгзе" файлу умею
Меня интересовала возможность
внутренним способом узнать версию.
Например как в визульном бесике:
Label1.Caption = "Версия: " & App.Major &
"." & App.Minor & "." & App.Revision
так вот, существует ли такая возможность?
← →
Игорь Шевченко (2002-05-14 11:13) [4]День добрый,
Угу, существует. Из EXE-файла. :-)
Так как на этапе выполнения программы имеется EXE-файл с информацией о версии программы :-)
С уважением,
← →
sammy (2002-05-14 11:21) [5]:) Ясно. Теперь догнался!
Ещо раз спасибо!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.05.23;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.01 c