; Script generated by the Inno Setup Script Wizard ; and local_config.py located in this directory. ; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! [Setup] ChangesAssociations=yes AppName=SasView AppVerName=SasView-3.0.0 AppPublisher=(c) 2009 - 2013, UTK, UMD, NIST, ORNL, ISIS, ESS and ILL AppPublisherURL=http://www.sasview.org AppSupportURL=http://www.sasview.org AppUpdatesURL=http://www.sasview.org ChangesEnvironment=true DefaultDirName={pf}\SasView DefaultGroupName=.\SasView-3.0.0 DisableProgramGroupPage=yes LicenseFile=license.txt OutputBaseFilename=setupSasView SetupIconFile=images\ball.ico Compression=lzma SolidCompression=yes PrivilegesRequired=none UsePreviousAppDir=no [Registry] Root: HKCR; Subkey: ".xml\OpenWithList\SasView.exe"; Flags: uninsdeletekey noerror Root: HKCR; Subkey: ".txt\OpenWithList\SasView.exe"; Flags: uninsdeletekey noerror Root: HKCR; Subkey: ".asc\OpenWithList\SasView.exe"; Flags: uninsdeletekey noerror Root: HKCR; Subkey: ".dat\OpenWithList\SasView.exe"; Flags: uninsdeletekey noerror Root: HKCR; Subkey: ".abs\OpenWithList\SasView.exe"; Flags: uninsdeletekey noerror Root: HKCR; Subkey: ".d1d\OpenWithList\SasView.exe"; Flags: uninsdeletekey noerror Root: HKCR; Subkey: ".sans\OpenWithList\SasView.exe"; Flags: uninsdeletekey noerror Root: HKCR; Subkey: ".nxs\OpenWithList\SasView.exe"; Flags: uninsdeletekey noerror Root: HKCR; Subkey: "applications\SasView.exe\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\SasView.exe"" ""%1"""; Flags: uninsdeletevalue noerror Root: HKCU; Subkey: "Software\Classes\.xml\OpenWithList\SasView.exe"; Flags: uninsdeletekey noerror Root: HKCU; Subkey: "Software\Classes\.txt\OpenWithList\SasView.exe"; Flags: uninsdeletekey noerror Root: HKCU; Subkey: "Software\Classes\.asc\OpenWithList\SasView.exe"; Flags: uninsdeletekey noerror Root: HKCU; Subkey: "Software\Classes\.dat\OpenWithList\SasView.exe"; Flags: uninsdeletekey noerror Root: HKCU; Subkey: "Software\Classes\.abs\OpenWithList\SasView.exe"; Flags: uninsdeletekey noerror Root: HKCU; Subkey: "Software\Classes\.d1d\OpenWithList\SasView.exe"; Flags: uninsdeletekey noerror Root: HKCU; Subkey: "Software\Classes\.sans\OpenWithList\SasView.exe"; Flags: uninsdeletekey noerror Root: HKCU; Subkey: "Software\Classes\.nxs\OpenWithList\SasView.exe"; Flags: uninsdeletekey noerror Root: HKCU; Subkey: "Software\Classes\applications\SasView.exe\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\SasView.exe"" ""%1"""; Flags: uninsdeletevalue noerror Root: HKCR; Subkey: ".svs"; ValueType: string; ValueName: ""; ValueData: "{app}\SasView.exe"; Flags: uninsdeletevalue noerror Root: HKCR; Subkey: ".fitv"; ValueType: string; ValueName: ""; ValueData: "{app}\SasView.exe"; Flags: uninsdeletevalue noerror Root: HKCR; Subkey: ".inv"; ValueType: string; ValueName: ""; ValueData: "{app}\SasView.exe"; Flags: uninsdeletevalue noerror Root: HKCR; Subkey: ".prv"; ValueType: string; ValueName: ""; ValueData: "{app}\SasView.exe"; Flags: uninsdeletevalue noerror Root: HKCR; Subkey: "{app}\SasView.exe"; ValueType: string; ValueName: ""; ValueData: "{app}\SasView File"; Flags: uninsdeletekey noerror Root: HKCR; Subkey: "{app}\SasView.exe\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\SasView.exe"" ""%1"""; Flags: uninsdeletevalue noerror Root: HKCR; Subkey: "{app}\images\ball.ico"; ValueType: string; ValueName: ""; ValueData: "{app}\SasView.exe,0"; Flags: uninsdeletevalue noerror Root: HKLM; Subkey: "SYSTEM\CurrentControlSet\Control\Session Manager\Environment"; ValueType: expandsz; ValueName: "SASVIEWPATH"; ValueData: "{app}"; Flags: uninsdeletevalue noerror ; Write to PATH (below) is disabled; need more tests ;Root: HKCU; Subkey: "Environment"; ValueType: expandsz; ValueName: "PATH"; ValueData: "%SASVIEWPATH%;{olddata}"; Check: NeedsAddPath() [Languages] Name: "english"; MessagesFile: "compiler:Default.isl" [Tasks] Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; [Files] Source: "dist\SasView.exe"; DestDir: "{app}"; Flags: ignoreversion Source: "dist\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs Source: "dist\plugin_models\*"; DestDir: "{userdesktop}\..\.sasview\plugin_models"; Flags: recursesubdirs createallsubdirs Source: "dist\config\custom_config.py"; DestDir: "{userdesktop}\..\.sasview\config"; Flags: recursesubdirs createallsubdirs Source: "dist\default_categories.json"; DestDir: "{userdesktop}\..\.sasview"; DestName: "serialized_cat.json"; ; NOTE: Don't use "Flags: ignoreversion" on any shared system files [Icons] Name: "{group}\SasView"; Filename: "{app}\SasView.exe"; WorkingDir: "{app}"; IconFilename: "{app}\images\ball.ico" Name: "{group}\{cm:UninstallProgram, SasView}"; Filename: "{uninstallexe}" Name: "{commondesktop}\SasView-3.0.0"; Filename: "{app}\SasView.exe"; Tasks: desktopicon; WorkingDir: "{app}" ; IconFilename: "{app}\images\ball.ico" Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\SasView-3.0.0"; Filename: "{app}\SasView.exe"; Tasks: quicklaunchicon; WorkingDir: "{app}"; IconFilename: "{app}\images\ball.ico" [Run] Filename: "{app}\SasView.exe"; Description: "{cm:LaunchProgram, SasView}"; Flags: nowait postinstall skipifsilent ; Install the Microsoft C++ DLL redistributable package if it is provided and the DLLs are not present on the target system. ; Note that the redistributable package is included if the app was built using Python 2.6 or 2.7, but not with 2.5. ; Parameter options: ; - for silent install use: "/q" ; - for silent install with progress bar use: "/qb" ; - for silent install with progress bar but disallow cancellation of operation use: "/qb!" ; Note that we do not use the postinstall flag as this would display a checkbox and thus require the user to decide what to do. ;Filename: "{app}\vcredist_x86.exe"; Parameters: "/qb!"; WorkingDir: "{tmp}"; StatusMsg: "Installing Microsoft Visual C++ 2008 Redistributable Package ..."; Check: InstallVC90CRT(); Flags: skipifdoesntexist waituntilterminated [Dirs] Name: "{app}\"; Permissions: everyone-modify [Code] function InstallVC90CRT(): Boolean; begin Result := not DirExists('C:\WINDOWS\WinSxS\x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-ww_d08d0375'); end; function NeedsAddPath(): boolean; var oldpath: string; newpath: string; pathArr: TArrayOfString; i: Integer; begin RegQueryStringValue(HKEY_CURRENT_USER,'Environment','PATH', oldpath) oldpath := oldpath + ';'; newpath := '%SASVIEWPATH%'; i := 0; while (Pos(';', oldpath) > 0) do begin SetArrayLength(pathArr, i+1); pathArr[i] := Copy(oldpath, 0, Pos(';', oldpath)-1); oldpath := Copy(oldpath, Pos(';', oldpath)+1, Length(oldpath)); i := i + 1; // Check if current directory matches app dir if newpath = pathArr[i-1] then begin Result := False; exit; end; end; Result := True; end; [UninstallDelete] ; Delete directories and files that are dynamically created by the application (i.e. at runtime). Type: filesandordirs; Name: "{app}\.matplotlib" Type: files; Name: "{app}\*.*" ; The following is a workaround for the case where the application is installed and uninstalled but the ;{app} directory is not deleted because it has user files. Then the application is installed into the ; existing directory, user files are deleted, and the application is un-installed again. Without the ; directive below, {app} will not be deleted because Inno Setup did not create it during the previous ; installation. Type: dirifempty; Name: "{app}"