我能够找出问题所在:很明显,我在使用这些行时弄错了:
Source: "jre-8u11-windows-x64.exe"; DestDir: "{tmp}\JREInstall.exe"; Check: IsWin64 AND InstallJava();
Source: "jre-8u11-windows-i586.exe"; DestDir: "{tmp}\JREInstall.exe"; Check: (NOT IsWin64) AND InstallJava();
他们应该像这样:
Source: "jre-8u11-windows-x64.exe"; DestDir: "{tmp}"; DestName: "JREInstall.exe"; Check: IsWin64 AND InstallJava();
Source: "jre-8u11-windows-i586.exe"; DestDir: "{tmp}"; DestName: "JREInstall.exe"; Check: (NOT IsWin64) AND InstallJava();
这似乎已经解决了问题。
另外这行我被误认为:
Filename: "{tmp}\JREInstall.exe"; Parameters: "/s"; Flags: Nowait postinstall runhidden runascurrentuser; Check: InstallJava()
应该是:
Filename: "{tmp}\JREInstall.exe"; Parameters: "/s"; Flags: Nowait runhidden runascurrentuser; Check: InstallJava()
这是我使用此特定工具的有限经验所能提供的最佳解决方案。如果有机会,我将研究PrepareToInstall选项,但这暂时有效。