Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как получить версию приложения


Страницы:   1 2 3

neveGreen ©   (2008-12-15 15:30:00) 

Как получить версию приложения которое исполняется и версию exe файла и сравнить их потом? Применяется для обновления программы.


Palladin   (2008-12-15 15:35:00) [41]

Function GetVersion(Const S:String;Simple:Boolean=False):String;
Var
buf:Pointer;
nSize:Integer;
vi:^vs_fixedfileinfo;
p:pointer absolute vi;
l:cardinal;
l1,l2:cardinal;
vs1:array [1..2] of word absolute l1;
vs2:array [1..2] of word absolute l2;
Begin
nSize:=GetFileVersionInfoSize(PChar(S),l);
GetMem(buf,nSize);
Try
 GetFileVersionInfo(PChar(S),l,nSize,Buf);
 VerQueryValue(Buf,'\',p,l);
 l1:=vi.dwFileVersionMS;
 l2:=vi.dwFileVersionLS;
 If Simple
  Then Result:=IntToStr(vs1[2])+'.'+IntToStr(vs1[1])+'.'+IntToStr(vs2[2])+'.'+IntToStr(vs2[1])
  Else Result:='v'+IntToStr(vs1[2])+'.'+IntToStr(vs1[1])+' r'+IntToStr(vs2[2])+' b'+IntToStr(vs2[1]);
Finally
 FreeMem(buf);
End;
End;


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо