Вниз
Скачать: CL | DM;

Version info (Build)   Найти похожие ветки 

← →
Nucer   (2007-08-30 12:11) [0]

Существует ли простой спобос получить данную информацию о своей же программе? Может есть какая-нибудь переменная? Или придется использовать стандартные функции (GetFileVersionInfo)?


← →
Desdechado ©   (2007-08-30 12:12) [1]

Придется.


← →
DVM ©   (2007-08-30 12:22) [2]


function GetFullFileVersion : string;
Var j,w   : Cardinal;
   s     : shortstring;
   buf   : pointer;
   buf2  : pointer;
   q     : DWord;
   vsinfo: ^VS_FIXEDFILEINFO;
   mVer,
   lVer,
   rVer,
   bVer,
   flag  : DWord;
begin
 s := ParamStr(0) + #0;
 j := GetFileVersionInfoSize(@s[1],w);
 if j = 0 then Exit;
 buf := Ptr(GlobalAlloc(GMEM_FIXED,j));
 GetFileVersionInfo(@s[1], 0, j, buf);
 VerQueryValue(buf, "\", buf2, q);
 vsinfo := buf2;
 mVer := vsInfo^.dwProductVersionMS div $FFFF;
 lVer := vsInfo^.dwProductVersionMS mod $10000;
 rVer := vsInfo^.dwProductVersionLS div $FFFF;
 bVer := vsInfo^.dwProductVersionLS mod $10000;
 flag := vsInfo^.dwFileFlags;
 s := IntToStr(mVer) + "." +
      IntToStr(lVer) + "." +
      IntToStr(rVer) + "." +
      IntToStr(bVer);
 if (flag and VS_FF_DEBUG) > 0        then s := s + " debug ";
 if (flag and VS_FF_PRERELEASE) > 0   then s := s + " prerelease ";
 if (flag and VS_FF_PRIVATEBUILD) > 0 then s := s + " private ";
 if (flag and VS_FF_SPECIALBUILD) > 0 then s := s + " special ";
 Result := s;
 GlobalFree(Cardinal(buf));
end;


← →
Nucer   (2007-08-30 12:31) [3]

2DVM Спасибо за помощь


← →
Fay ©   (2007-08-30 12:31) [4]

> vsInfo^.dwProductVersionMS div $FFFF;
а что это за прикол с делением на нечётное число ?


← →
DevilDevil ©   (2007-08-30 13:18) [5]

mVer := vsInfo^.dwProductVersionMS shr 16;
lVer := vsInfo^.dwProductVersionMS and $FFFF;
rVer := vsInfo^.dwProductVersionLS shr 16;
bVer := vsInfo^.dwProductVersionLS and $FFFF;


← →
DevilDevil ©   (2007-08-30 13:22) [6]

mVer := HiWord(vsInfo^.dwProductVersionMS);
lVer := LoWord(vsInfo^.dwProductVersionMS);
rVer := HiWord(vsInfo^.dwProductVersionLS);
bVer := LoWord(vsInfo^.dwProductVersionLS);



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.01 c
2-1206943605
Fr1K
2008-03-31 10:06
2008.04.27
Связка трёх таблиц


2-1206888960
shredder2003
2008-03-30 18:56
2008.04.27
не копируется текст из LabeledEdit1 в буфер обмена


2-1207037034
некто
2008-04-01 12:03
2008.04.27
Fast Shutdown


4-1188377902
-=Domix=-
2007-08-29 12:58
2008.04.27
Графика в консоли


8-1179338080
namco
2007-05-16 21:54
2008.04.27
dvd и dvx в delphi




   Наверх