Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.05.16;
Скачать: [xml.tar.bz2];

Вниз

Help->About и номер версии+билд???   Найти похожие ветки 

 
Victor N Golutvin   (2002-05-04 12:48) [0]

Можно-ли автоматически при сборке программы в Help-About вставлять номер собираемой версии и билда в виде строковых переменных, так как это возможно, скажем в VB? Или это изначально надо делать ручками и не иначе?
Заранее спасибо всем, кто подскажет.
Виктор.


 
shane54   (2002-05-04 16:04) [1]

В Project\Options\Version info можно прописать всю необходимую инфу, но вот как ее вытаскивать и вставлять в Help - About не знаю...


 
troits   (2002-05-04 16:08) [2]

См. API - ф-ции
GetFileVersionInfoSize,
GetFileVersionInfo,
VerQueryValue


 
Victor N Golutvin   (2002-05-04 17:53) [3]

Спасибо. Сейчас посмотрю по API... Я почему-то думал, что API по открітому приложению не работает.. А ведь какая разница.. Файл-то не блокирован...


 
Vint   (2002-05-04 20:04) [4]

Вот вывод:

Название организации
Права принадлежат
Версия программы
Предыдущее обновление



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;

procedure TSplash.FormCreate(Sender: TObject);
var
R : TRegistry;
S,D,V : String;
begin
R:=TRegistry.Create;
R.RootKey:=HKEY_LOCAL_MACHINE;
R.OpenKey("SOFTWARE\Microsoft\Windows\CurrentVersion", False);
UserName.Caption:=R.ReadString("RegisteredOwner");
Organization.Caption:=R.ReadString("RegisteredOrganization");
R.Free;

S:=ExpandFileName(Application.ExeName);
D:=DateTimeToStr(FileDateToDateTime(FileAge(S)));
V:=CurrentFileInfo(Application.ExeName);
Label5.Caption:=V;
Label6.Caption:=D;
end;

Желаю удачи



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

Форум: "Основная";
Текущий архив: 2002.05.16;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.005 c
14-50110
VID
2002-03-27 19:45
2002.05.16
Голосование о ПИВЕ


7-50147
viksoft
2002-02-20 18:02
2002.05.16
Своя закладка в свойствах файла


14-50128
rem_
2002-04-08 11:24
2002.05.16
Delphi Mastak Forums Client


1-50036
Batiskaf
2002-04-29 12:38
2002.05.16
Hash table in Delphi5?


3-49848
roman_tutov
2002-04-18 18:43
2002.05.16
dBase->IB





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский