Главная страница
    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.006 c
14-50134
VictorT
2002-04-05 11:42
2002.05.16
Подскажите, где скачать програмку...


1-49966
Socol
2002-04-30 06:15
2002.05.16
Scrollbar помогите есть проблемы)))


1-50010
Демон
2002-04-30 19:24
2002.05.16
Как возвести число в степень????!!?


1-49955
coty
2002-05-02 01:45
2002.05.16
Русификация


1-50037
Spike_msu
2002-05-02 03:01
2002.05.16
Перемещение по файлу





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