Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.05;
Скачать: CL | DM;

Вниз

Версия своего приложения   Найти похожие ветки 

 
Solden   (2004-08-20 12:37) [0]

Подскажите, как добраться до информации о версии создаваемого приложения? Или это делается через получение инфы об exe-шнике?
Если да то как?
Заранее благодарен.


 
Iconka ©   (2004-08-20 12:39) [1]

Чуть ниже смотри
http://delphimaster.net/view/1-1092904126/&web=1


 
Семен Сорокин ©   (2004-08-20 12:39) [2]

procedure GetVersionAttributes(Name: String; var ACompany, ADescription, AComment: String);
 type
   PVerLang = ^TVerLang;
   TVerLang = packed record
     Charset : Word;
     LangID  : Word;
   end;
 var
     VerInfoSize : DWord;
     dummy       : DWord;
     VerInfo : Pointer;
     VSFixed : PVSFixedFileInfo;
     VSFixedSize : DWORD;
     VTranslation : PVerLang;
     VTRSize : DWORD;
     LangID : String;
     VerKey : String;
     VerDesc : PChar;
     VerDescSize : DWORD;
     VerCompany : PChar;
     VerCompanySize : DWORD;
     VerComment : PChar;
     VerCommentSize : DWORD;
     Status : LongBool;
 begin
  ACompany := "<Not available>";
  ADescription := "<Not available>";
  AComment := "";
  VerInfoSize := GetFileVersionInfoSize(PChar(Name), dummy);
  if (VerInfoSize = 0) then
    Exit;
  GetMem( VerInfo, VerInfoSize );
  try
    Status := GetFileVersionInfo(PChar(Name), 0, VerInfoSize, VerInfo);
    if NOT Status then
      Exit;
    VerQueryValue( VerInfo, "\", Pointer(VSFixed), VSFixedSize);
    VerQueryValue( VerInfo, "\VarFileInfo\Translation", Pointer(VTranslation), VTRSize);
    if (VTRSize = 4) then begin
      LangID := Format("%.4x%.4x", [VTranslation^.CharSet, VTranslation^.LangID]);
      VerKey := "\StringFileInfo\"+LangID+"\FileVersion";//Description";
      Status := VerQueryValue (VerInfo,PChar(VerKey), Pointer(VerDesc), VerDescSize);
      if (Status) AND (VerDescSize <> 0) then
        ADescription := VerDesc;
      VerKey := "\StringFileInfo\"+LangID+"\CompanyName";
      Status := VerQueryValue (VerInfo,PChar(VerKey), Pointer(VerCompany), VerCompanySize);
      if (Status) AND (VerCompanySize <> 0) then
        ACompany := VerCompany;
      VerKey := "\StringFileInfo\"+LangID+"\Comments";
      Status := VerQueryValue (VerInfo,PChar(VerKey), Pointer(VerComment), VerCommentSize);
      if (Status) AND (VerCommentSize <> 0) then
        AComment := VerComment;
    end;
  finally
    FreeMem(VerInfo, VerInfoSize);
  end;
 end;


 
Solden   (2004-08-20 13:10) [3]

Спасибо, Семен Сорокин © .



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

Текущий архив: 2004.09.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.044 c
1-1092904126
kvt
2004-08-19 12:28
2004.09.05
Как можно узнать версию программы?


3-1092223644
DmitryMN
2004-08-11 15:27
2004.09.05
Ошибка в UDF


3-1092212181
Koala
2004-08-11 12:16
2004.09.05
Помогите с ХП


1-1092800406
BoxTer
2004-08-18 07:40
2004.09.05
Минимаксный метод...


8-1086791132
Тёма
2004-06-09 18:25
2004.09.05
Загразка имён .mp3 файлов в ListBox моего проигрывателя