Проверка установлена ли .NetCore Runtime в Inno Setup

Мне нужно проверять установлена ли .Net Core Runtime у пользователя. Если её нет тогда установить её.

Заранее спасибо.


Ответы (1 шт):

Автор решения: NizMaS

Вот функция, которая проверяет на наличие райнтайма в системе.

function hasDotNetCore() : boolean;
var
    runtimes: TArrayOfString;
    I: Integer;
    versionCompare: Integer;
    registryKey: string;
begin
    registryKey := 'SOFTWARE\WOW6432Node\dotnet\Setup\InstalledVersions\x64\sharedfx\Microsoft.NETCore.App';
    if(not IsWin64) then
       registryKey :=  'SOFTWARE\dotnet\Setup\InstalledVersions\x86\sharedfx\Microsoft.NETCore.App';
       
    Log('[.NET] Look for version ' + version);
       
    if not RegGetValueNames(HKLM, registryKey, runtimes) then
    begin
      Log('[.NET] Issue getting runtimes from registry');
      Result := False;
      Exit;
    end;
    Result := True;
end;
→ Ссылка