Inno Setup:显示了32位组件 - 尽管它们不应该

时间:2013-11-27 11:09:33

标签: inno-setup autocad

好的,必须在安装过程中根据现有的注册表项显示可安装组件的列表,并且它可以工作 - 不知何故。

这是我检查每个组件的键的功能,但是虽然没有安装相应的32位版本的AutoCAD,但会显示32位组件。我们以案例8为例。当前安装的AutoCAD版本为64位,在安装过程中会显示相应的程序。案例7应检查已安装的AutoCAD 32位,并列出了我的相应程序 - 但为什么?

function CheckRegKey(GetNumber: Integer): Boolean; 
begin
  Result := False;
  case GetNumber of
     1: Result := RegKeyExists(HKLM, 'SOFTWARE\Autodesk\AutoCAD\R17.0');
     2: Result := RegKeyExists(HKLM, 'SOFTWARE\Autodesk\AutoCAD\R17.1');
     3: Result := RegKeyExists(HKLM, 'SOFTWARE\Autodesk\AutoCAD\R17.2');
     4: Result := RegKeyExists(HKLM64, 'SOFTWARE\Autodesk\AutoCAD\R17.2');
     5: Result := RegKeyExists(HKLM, 'SOFTWARE\Autodesk\AutoCAD\R18.0');
     6: Result := RegKeyExists(HKLM64, 'SOFTWARE\Autodesk\AutoCAD\R18.0');
     7: Result := RegKeyExists(HKLM, 'SOFTWARE\Autodesk\AutoCAD\R18.1');
     8: Result := RegKeyExists(HKLM64, 'SOFTWARE\Autodesk\AutoCAD\R18.1');
     9: Result := RegKeyExists(HKLM, 'SOFTWARE\Autodesk\AutoCAD\R18.2');
    10: Result := RegKeyExists(HKLM64, 'SOFTWARE\Autodesk\AutoCAD\R18.2');
    11: Result := RegKeyExists(HKLM, 'SOFTWARE\Autodesk\AutoCAD\R19.0');
    12: Result := RegKeyExists(HKLM64, 'SOFTWARE\Autodesk\AutoCAD\R19.0');
    13: Result := RegKeyExists(HKLM, 'SOFTWARE\Autodesk\AutoCAD\R19.1');
    14: Result := RegKeyExists(HKLM64, 'SOFTWARE\Autodesk\AutoCAD\R19.1');
end; 

端;

0 个答案:

没有答案