如何检查是否安装了Adobe Acrobat Reader

时间:2013-04-10 00:06:14

标签: installation inno-setup acrobat foxit

我有这个代码,提示用户安装Foxit PDF阅读器。如何检查计算机是否安装了Adobe Acrobat Reader?

[Components]
Name: "foxit"; Description: "Foxit"; Types: "games"; ExtraDiskSpaceRequired: "30000000"; Check: "not AcrobatExists"; 

如果找不到Adobe Acrobat Reader,那么我想开始安装福昕阅读器。

1 个答案:

答案 0 :(得分:2)

试试这个Acrobat Reader - Detect installed version脚本:

[Setup]
AppName=Acrobat
AppVerName=Acrobat
DefaultDirName={pf}\Acrobat
DisableStartupPrompt=true
Uninstallable=false
DisableDirPage=true
OutputBaseFilename=Acrobat
CreateAppDir=false


[Code]

function GetAcrobatReaderVersion(): String;
var
  sVersion:  String;
begin
  sVersion := '';
  RegQueryStringValue( HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\AcroRd32.exe',
     '', sVersion );
  GetVersionNumbersString( sVersion , sVersion );
  Result := sVersion;
end;


function NextButtonClick(CurPage: Integer): Boolean;
begin

  // by default go to next page
  Result := true;

  if CurPage = wpWelcome then
  begin

    if Length( GetAcrobatReaderVersion() ) = 0 then
    begin
      MsgBox( 'There is not installed Acrobat reader',  mbInformation, MB_OK );
      Result := false;
    end
    else
      MsgBox( 'Acrobat reader installed is version ' + GetAcrobatReaderVersion() ,
           mbInformation, MB_OK );

  end;

end;

您可以使用GetAcrobatReaderVersion()并制作检查功能,例如:

function AcrobatExists(): Boolean;
begin
    result := Length( GetAcrobatReaderVersion() ) <> 0;
end;