在inno的jre 1.6检查和进度条

时间:2010-05-10 13:16:11

标签: inno-setup java

我想检查是否安装了1.6或更高版本。如果已安装,我想继续我的应用程序。如果没有安装,我想在安装jre后安装jre-6u17-windows-i586-s.exe,我的控件不会再次返回inno。请发送一个inno脚本。

最好的问候

SOumen

1 个答案:

答案 0 :(得分:3)

对于[FILES]部分:

[Files]
Source: "jre-6u17-windows-i586-s.exe"; DestDir: "{app}\JRE 1.6"; Flags: onlyifdoesntexist

对于[CODE]部分:

[Code]
Function JREInstallPrompt:Boolean;
begin
  if ((msgBox ('Do you want to install JRE 1.6?',mbinformation,mb_YesNo)=idYes)) then
   begin
     msgBox ('JRE 1.6 will being installing now. Please do not restart the machine or log off until it is complete!',mbinformation,mb_OK);
     Result:=True;
   end
 else Result:=False;
end;

Function JREVerifyInstall:Boolean;
begin
 if ((RegValueExists(HKEY_LOCAL_MACHINE, 'SOFTWARE\JavaSoft','InstallerVersion')) or (JREInstallPrompt=False)) then //Exists or do not install
   Result:=False
 else Result:=True;
end;

对于RUN部分:

[Run]
;SQL Server Express 2005 Installer
Filename: "{app}\JRE 1.6\jre-6u17-windows-i586-s.exe"; WorkingDir: {app}\JRE 1.6; StatusMsg: Installing Java Runtime Environment... Please Wait...;Check:JREVerifyInstall

希望这会让你指出正确的方向。