uses
registry;
function IE_installed(var Version: string): Boolean;
var
Reg: TRegistry;
begin
Reg := TRegistry.Create;
with Reg dobegin
RootKey := HKEY_LOCAL_MACHINE;
OpenKey('Software\Microsoft\Internet Explorer', False);
if ValueExists('Version') then
Version := ReadString('Version')
else
Version := '';
CloseKey;
Free;
end;
Result := Version <> '';
end;
procedure TForm1.Button1Click(Sender: TObject);
var
IE_Version: string;
beginif IE_Installed(IE_Version) then
ShowMessage(Format('Internet Explorer %s installed.', [IE_Version]));
end;
Here's a translation of the text into Russian:
Делфи-код, который проверяет, установлен ли Internet Explorer на системе и получает его версию. Вот разбивка каждого шага:
Функция IE_installed принимает строковый параметр Version (который будет хранить версию IE) и возвращает логическое значение, указывающее, установлен ли IE.
Внутри функции создается объект TRegistry (Reg) для доступа к реестру Windows.
Проверяется, существует ли значение Version в этом ключе с помощью метода ValueExists. Если оно существует, читается строковое значение с помощью метода ReadString и присваивается параметру Version.
Если значение не существует (т.е. IE не установлен), присваивается пустой строке.
Функция закрывает ключ реестра и освобождает объект TRegistry.
Наконец, функция возвращает, является ли Version пустой строкой или нет. Это указывает, установлен ли IE (Result := True) или нет (Result := False).
В обработчике события клика кнопки (Button1Click) формы (TForm1) вызывается функция IE_installed и хранится ее результат в переменной IE_Version.
Если IE установлен, отображается сообщение с версией с помощью функции ShowMessage.
Альтернативное решение:
uses
Registry;
function IsInternetExplorerInstalled: Boolean;
var
Reg: TRegistry;
begin
Reg := TRegistry.Create;
try
Reg.RootKey := HKEY_LOCAL_MACHINE;
if Reg.OpenKey('Software\Microsoft\Internet Explorer') then
Result := Reg.ValueExists('Version')
else
Result := False;
finally
Reg.Free;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if IsInternetExplorerInstalled then
ShowMessage('Internet Explorer is installed.')
else
ShowMessage('Internet Explorer is not installed.');
end;
В этом варианте код упрощается, убираются ненужные переменные и результат функции IsInternetExplorerInstalled возвращается напрямую.
В статье описывается функция на языке Delphi, позволяющая определить, установлен ли Internet Explorer и версия его установленной версии.
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.