Главная страница
    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
1-49988
Дмитрий000
2002-04-30 10:07
2002.05.16
Передача параметров в DLL


1-49954
Rammst
2002-05-04 02:26
2002.05.16
Мышь


14-50129
Agent Smith
2002-04-08 17:23
2002.05.16
России принимают DMCA!


3-49826
ao1973
2002-04-18 11:55
2002.05.16
Друзья как найти нормальную! документацию по АДО


1-49960
VVVVV
2002-05-04 19:45
2002.05.16
не работает SelectNext(...);





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский