--- AE/Setup/Windows/AEI.iss 2013/05/03 13:45:16 855 +++ AE/Setup/Windows/AEI.iss 2020/06/06 12:45:18 1133 @@ -1,5 +1,5 @@ #define AppId "{{B67333BB-1CF9-4EFD-A40B-E25B5CB4C8A7}}" -#define AppVersion "1.1" +#define AppVersion "1.4" #define AppLongName "Anniversary Edition of Oni" #define AppShortName "Anniversary-Edition-Setup" @@ -17,6 +17,11 @@ DefaultGroupName=Oni AE DirExistsWarning=no AppendDefaultDirName=no +CreateUninstallRegKey=no +Uninstallable=no +UsePreviousAppDir=no + + ArchitecturesInstallIn64BitMode=x64 ShowComponentSizes=no AppPublisher= @@ -41,153 +46,33 @@ en.JavaNotFound=This program needs a Jav [Tasks] Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked -[Components] -Name: "JRE"; Description: "JRE" -Name: "AEI"; Description: "AEI" - [Dirs] Name: "{app}\AE"; Permissions: users-modify [Files] -Source: "AEInstaller2Updater.jar"; DestDir: "{app}\AE\AEInstaller"; Components: AEI -Source: "JRE\*"; DestDir: "{app}\AE\AEInstaller\JRE"; Excludes: ".svn"; Flags: createallsubdirs recursesubdirs onlyifdoesntexist; Components: JRE -Source: "AElogo.ico"; DestDir: "{app}\AE\AEInstaller"; Components: AEI +Source: "AEInstaller2Updater.jar"; DestDir: "{app}\AE\AEInstaller" +Source: "JRE\*"; DestDir: "{app}\AE\AEInstaller\JRE"; Excludes: ".svn"; Flags: createallsubdirs recursesubdirs onlyifdoesntexist +Source: "AElogo.ico"; DestDir: "{app}\AE\AEInstaller" [Icons] -Name: "{app}\AE\AEInstaller2"; Filename: "{app}\AE\AEInstaller\JRE\bin\javaw.exe"; WorkingDir: "{app}\AE\AEInstaller"; IconFilename: "{app}\AE\AEInstaller\AElogo.ico"; Parameters: "-Dsun.java2d.d3d=false -jar bin\AEInstaller2.jar"; Check: not IsJavaInstalled -Name: "{app}\AE\AEInstaller2Updater"; Filename: "{app}\AE\AEInstaller\JRE\bin\javaw.exe"; WorkingDir: "{app}\AE\AEInstaller"; IconFilename: "{app}\AE\AEInstaller\AElogo.ico"; Parameters: "-Dsun.java2d.d3d=false -jar AEInstaller2Updater.jar"; Check: not IsJavaInstalled -Name: "{group}\AEInstaller 2"; Filename: "{app}\AE\AEInstaller\JRE\bin\javaw.exe"; WorkingDir: "{app}\AE\AEInstaller"; IconFilename: "{app}\AE\AEInstaller\AElogo.ico"; Parameters: "-Dsun.java2d.d3d=false -jar bin\AEInstaller2.jar"; Check: not IsJavaInstalled -Name: "{commondesktop}\AEInstaller 2"; Filename: "{app}\AE\AEInstaller\JRE\bin\javaw.exe"; WorkingDir: "{app}\AE\AEInstaller"; IconFilename: "{app}\AE\AEInstaller\AElogo.ico"; Parameters: "-Dsun.java2d.d3d=false -jar bin\AEInstaller2.jar"; Tasks: desktopicon; Check: not IsJavaInstalled -Name: "{app}\AE\AEInstaller2"; Filename: "{code:GetJavaPath}\bin\javaw.exe"; WorkingDir: "{app}\AE\AEInstaller"; IconFilename: "{app}\AE\AEInstaller\AElogo.ico"; Parameters: "-Dsun.java2d.d3d=false -jar bin\AEInstaller2.jar"; Check: IsJavaInstalled -Name: "{app}\AE\AEInstaller2Updater"; Filename: "{code:GetJavaPath}\bin\javaw.exe"; WorkingDir: "{app}\AE\AEInstaller"; IconFilename: "{app}\AE\AEInstaller\AElogo.ico"; Parameters: "-Dsun.java2d.d3d=false -jar AEInstaller2Updater.jar"; Check: IsJavaInstalled -Name: "{group}\AEInstaller 2"; Filename: "{code:GetJavaPath}\bin\javaw.exe"; WorkingDir: "{app}\AE\AEInstaller"; IconFilename: "{app}\AE\AEInstaller\AElogo.ico"; Parameters: "-Dsun.java2d.d3d=false -jar bin\AEInstaller2.jar"; Check: IsJavaInstalled -Name: "{commondesktop}\AEInstaller 2"; Filename: "{code:GetJavaPath}\bin\javaw.exe"; WorkingDir: "{app}\AE\AEInstaller"; IconFilename: "{app}\AE\AEInstaller\AElogo.ico"; Parameters: "-Dsun.java2d.d3d=false -jar bin\AEInstaller2.jar"; Tasks: desktopicon; Check: IsJavaInstalled +Name: "{app}\AE\AEInstaller2"; Filename: "{app}\AE\AEInstaller\JRE\bin\javaw.exe"; WorkingDir: "{app}\AE\AEInstaller"; IconFilename: "{app}\AE\AEInstaller\AElogo.ico"; Parameters: "-Dsun.java2d.d3d=false -jar bin\AEInstaller2.jar" +Name: "{app}\AE\AEInstaller2Updater"; Filename: "{app}\AE\AEInstaller\JRE\bin\javaw.exe"; WorkingDir: "{app}\AE\AEInstaller"; IconFilename: "{app}\AE\AEInstaller\AElogo.ico"; Parameters: "-Dsun.java2d.d3d=false -jar AEInstaller2Updater.jar" +Name: "{group}\AEInstaller 2"; Filename: "{app}\AE\AEInstaller\JRE\bin\javaw.exe"; WorkingDir: "{app}\AE\AEInstaller"; IconFilename: "{app}\AE\AEInstaller\AElogo.ico"; Parameters: "-Dsun.java2d.d3d=false -jar bin\AEInstaller2.jar" +Name: "{commondesktop}\AEInstaller 2"; Filename: "{app}\AE\AEInstaller\JRE\bin\javaw.exe"; WorkingDir: "{app}\AE\AEInstaller"; IconFilename: "{app}\AE\AEInstaller\AElogo.ico"; Parameters: "-Dsun.java2d.d3d=false -jar bin\AEInstaller2.jar"; Tasks: desktopicon [Run] -Filename: "{app}\AE\AEInstaller\JRE\bin\javaw.exe"; WorkingDir: "{app}\AE\AEInstaller"; Parameters: "-Dsun.java2d.d3d=false -jar AEInstaller2Updater.jar"; Flags: runasoriginaluser; Check: not IsJavaInstalled; BeforeInstall: WriteProxyData -Filename: "{code:GetJavaPath}\bin\javaw.exe"; WorkingDir: "{app}\AE\AEInstaller"; Parameters: "-Dsun.java2d.d3d=false -jar AEInstaller2Updater.jar"; Flags: runasoriginaluser; Check: IsJavaInstalled; BeforeInstall: WriteProxyData +Filename: "{app}\AE\AEInstaller\JRE\bin\javaw.exe"; WorkingDir: "{app}\AE\AEInstaller"; Parameters: "-Dsun.java2d.d3d=false -jar AEInstaller2Updater.jar"; Flags: runasoriginaluser; BeforeInstall: WriteProxyData [Code] var PageUseProxy: TInputOptionWizardPage; PageProxyData: TInputQueryWizardPage; - javaPath: String; - -procedure DecodeVersion (verstr: String; var verint: array of Integer); -var - i,p: Integer; s: string; -begin - // initialize array - verint := [0,0,0,0]; - i := 0; - while ((Length(verstr) > 0) and (i < 4)) do - begin - p := pos ('.', verstr); - if p > 0 then - begin - if p = 1 then s:= '0' else s:= Copy (verstr, 1, p - 1); - verint[i] := StrToInt(s); - i := i + 1; - verstr := Copy (verstr, p+1, Length(verstr)); - end - else - begin - verint[i] := StrToInt (verstr); - verstr := ''; - end; - end; -end; - -function CompareVersion (ver1, ver2: String) : Integer; -var - verint1, verint2: array of Integer; - i: integer; -begin - SetArrayLength (verint1, 4); - DecodeVersion (ver1, verint1); - - SetArrayLength (verint2, 4); - DecodeVersion (ver2, verint2); - - Result := 0; i := 0; - while ((Result = 0) and ( i < 4 )) do - begin - if verint1[i] > verint2[i] then - Result := 1 - else - if verint1[i] < verint2[i] then - Result := -1; - i := i + 1; - end; - -end; - -procedure CheckJavaRuntime(); -var - W6432: Boolean; - Res: Boolean; - JavaVer: String; -begin - W6432 := False; - Res := RegQueryStringValue(HKLM, 'SOFTWARE\JavaSoft\Java Runtime Environment', 'CurrentVersion', JavaVer); - if (Res = False) and IsWin64() then - begin - Res := RegQueryStringValue(HKLM32, 'SOFTWARE\JavaSoft\Java Runtime Environment', 'CurrentVersion', JavaVer); - W6432 := Res; - end; - if Res = True then - begin - if Length( JavaVer ) > 0 then - begin - if CompareVersion(JavaVer, '{#MinJavaVersion}') >= 0 then - begin - if W6432 then - Res := RegQueryStringValue(HKLM32, 'SOFTWARE\JavaSoft\Java Runtime Environment\'+JavaVer, 'JavaHome', javaPath) - else - Res := RegQueryStringValue(HKLM, 'SOFTWARE\JavaSoft\Java Runtime Environment\'+JavaVer, 'JavaHome', javaPath); - end; - end; - end; -end; - -function IsJavaInstalled(): Boolean; -begin - Result := Length(javaPath) > 0; -end; - -function GetJavaPath(Param: String): String; -begin - Result := javaPath; -end; - -function InitializeSetup(): Boolean; -begin - CheckJavaRuntime(); - Result := True; -end; procedure InitializeWizard(); -var - Components : TNewCheckListbox; - i : integer; begin - Components := WizardForm.ComponentsList; - i := Components.Items.IndexOf('JRE'); - if i <> -1 then - begin - Components.ItemEnabled[i] := false; - Components.Checked[i] := not IsJavaInstalled(); - end; - i := Components.Items.IndexOf('AEI'); - if i <> -1 then - begin - Components.ItemEnabled[i] := false; - Components.Checked[i] := true; - end; - - PageUseProxy := CreateInputOptionPage(wpSelectTasks, 'Internet connection type', '', 'Do you require to use a proxy to connect to the internet?', true, false); + PageUseProxy := CreateInputOptionPage(wpSelectTasks, 'Internet connection type', '', 'Do you require a proxy to connect to the internet?', true, false); PageUseProxy.Add('Direct connection'); PageUseProxy.Add('Use proxy'); PageUseProxy.Values[0] := true; @@ -225,8 +110,6 @@ end; function ShouldSkipPage(PageID: Integer): Boolean; begin Result := false; - if (PageID = wpSelectComponents) then - Result := true; if (PageID = PageProxyData.ID) then Result := not EnterProxyData(); end;