Inno setup 如何使用Inno Setup自动确定以前安装的路径

Inno setup 如何使用Inno Setup自动确定以前安装的路径,inno-setup,Inno Setup,我正在尝试创建一个inno安装程序来修补以前的安装,但我无法强制安装程序确定以前安装的路径。 我尝试使用inno中的DefaultDirName={reg:HKxx\SubkeyName,ValueName | DefaultValue}功能,但我不确定应该将什么放在DefaultValue的位置。 我该怎么做 编辑: 我也试过这一部分: [Setup] DefaultDirName={code:GetPathInstalled} [Code] function GetPathInstalled

我正在尝试创建一个inno安装程序来修补以前的安装,但我无法强制安装程序确定以前安装的路径。 我尝试使用inno中的
DefaultDirName={reg:HKxx\SubkeyName,ValueName | DefaultValue}
功能,但我不确定应该将什么放在DefaultValue的位置。 我该怎么做

编辑: 我也试过这一部分:

[Setup]
DefaultDirName={code:GetPathInstalled}
[Code]
function GetPathInstalled (Param: String): String;
var
  Country: String;
begin
  RegQueryStringValue(HKEY_LOCAL_MACHINE, 'Software\JoWooD\Painkiller Resurrection', 'Install', Country); 
end;

但是当我运行安装程序时,路径是空的。

您的代码应该如下所示:

[Code]
function GetPathInstalled (Param: String): String;
var
  Country: String;
begin
  RegQueryStringValue(HKEY_LOCAL_MACHINE, 'Software\JoWooD\Painkiller Resurrection', 'Install', Country); 
  Result:= Country;
end;
作为GetPathInstalled函数的结果,未返回来自RegQueryStringValue的返回值