![]() |
![]() ![]() ![]() ![]() |
|
Прочитать версию файлаDelphi , Файловая система , ФайлыПрочитать версию файла
Оформил: DeeCo
function GetVersion: string;
var
VerInfoSize: DWORD;
VerInfo: Pointer;
VerValueSize: DWORD;
VerValue: PVSFixedFileInfo;
Dummy: DWORD;
begin
VerInfoSize := GetFileVersionInfoSize(PChar(ParamStr(0)), Dummy);
GetMem(VerInfo, VerInfoSize);
GetFileVersionInfo(PChar(ParamStr(0)), 0, VerInfoSize, VerInfo);
VerQueryValue(VerInfo, '\', Pointer(VerValue), VerValueSize);
with VerValue^ do
begin
Result := IntToStr(dwFileVersionMS shr 16);
Result := Result + '.' + IntToStr(dwFileVersionMS and $FFFF);
Result := Result + '.' + IntToStr(dwFileVersionLS shr 16);
Result := Result + '.' + IntToStr(dwFileVersionLS and $FFFF);
end;
FreeMem(VerInfo, VerInfoSize);
end;
procedure Form1.Button1Click(Sender: TObject);
begin
label1.Caption := GetVersion;
end;
Here is a translation of the text into Russian: Это программное обеспечение Delphi, которое читает информацию о версии из файла и отображает ее в контроле Label на форме. Рассмотрим, как работает код: Функция GetVersion Функция GetVersion принимает путь к файлу в качестве входного параметра (передается через параметр ParamStr(0)) и возвращает информацию о версии в виде строки. Вот что функция делает:
Процедура Button1Click Процедура Button1Click - это обработчик события кнопки на форме. Когда кнопка кликается, она вызывает функцию GetVersion с параметром пути к файлу (предположительно установленным в другом месте кода). Результатирующая строка версии присваивается свойству Caption контрола Label, именованного label1. Предложения по улучшению кода Вот несколько минимальных улучшений, которые вы можете сделать в коде:
Вот обновленная версия кода с этими предложениями: Программа на языке Delphi, предназначенная для чтения версии файла и отображения ее в виде строки формата 'x.y.z.w'. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 | ||||