| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238 |
- ; #######################################################################################
- ; # This Inno Setup script was generated by Visual & Installer - Visual Studio Addin #
- ; # Visual & Installer (c) 2013 - 2014 unSigned Softworks. All Rights Reserved. #
- ; # Visit http://www.visual-installer.com/ for more details. #
- ; #######################################################################################
-
- ; This script was created from .vdproj file. Not all features from .vdproj file may have been transfered.
-
- ; See the Inno Setup documentation at http://www.jrsoftware.org/ for details on creating script files!
-
- ;--------------------------------
- ; Product details
- #define PRODUCT_NAME "Aso_Fuel"
- ;Répertoire installation
- #define PRODUCT_CODE "{{0AFFBDE8-FD9A-4572-A5F1-30789B83F5DA}"
- #define PRODUCT_VERSION "3.1.1.2"
- #define MANUFACTURER "AAX"
- #define TITLE "Aso Fuel"
- #define MyAppExeName "Fuel_ASO.exe"
- [Setup]
- AppName={#PRODUCT_NAME}
- AppVersion={#PRODUCT_VERSION}
- AppId={#PRODUCT_CODE}
- DefaultDirName={pf}\{#MANUFACTURER}\{#PRODUCT_NAME}
- DefaultGroupName={#PRODUCT_NAME}
- AppCopyright=Copyright (c) 2015-2025 {#MANUFACTURER}
- AppPublisher={#MANUFACTURER}
- OutputDir=Release
- OutputBaseFilename=Fuel_ASO_Install
- [languages]
- Name: "fr" ; MessagesFile: "compiler:Languages\French.isl"
- [Files]
- ;Source: "D:\Patrick\Mes Téléchargements\dotNetFx45_Full_setup.exe"; DestDir: {app}; Check: NOT verifDotNet
- Source: "..\Fuel_ASO\Resources\pompe01.ico"; DestDir: "{app}\"; DestName: "pompe01.ico"; Flags: "ignoreversion"
- Source: "..\Fuel_ASO\bin\Release\Fuel_ASO.exe" ; DestDir: "{app}\"; DestName: {#MyAppExeName} ;
- Source: "..\Fuel_ASO\bin\Release\Fuel_ASO.exe.config" ; DestDir: "{app}\"; DestName: {#MyAppExeName}.config ;
- Source: "..\Fuel_ASO\bin\Release\Microsoft.AspNet.SignalR.Client.dll"; DestDir: "{app}\"; DestName: "Microsoft.AspNet.SignalR.Client.dll";
- Source: "..\Fuel_ASO\bin\Release\Newtonsoft.Json.dll"; DestDir: "{app}\"; DestName: "Newtonsoft.Json.dll";
- Source: "..\Fuel_ASO\bin\Release\Ionic.Utils.Zip.dll"; DestDir: "{app}\"; DestName: "Ionic.Utils.Zip.dll";
- [Registry]
- Root: "HKLM"; Subkey: "Software\{#MANUFACTURER}\{#PRODUCT_NAME}"; ValueType: string; ValueName: "softinstalled"; ValueData: "YES"; Flags: createvalueifdoesntexist uninsdeletekey ; Permissions: everyone-full; Languages: fr
- [Copy]
- [Icons]
- Name: "{userdesktop}\Aso Fuel"; Filename: "{app}\{#MyAppExeName}"; WorkingDir: "{app}\"; IconFilename: "{app}\pompe01.ico"; IconIndex: "0"; Flags: createonlyiffileexists
- Name: "{userprograms}\ASO\Fuel\Aso_Fuel"; Filename: "{app}\{#MyAppExeName}"; WorkingDir: "{app}\";IconFilename: "{app}\pompe01.ico"; IconIndex: "0"; Flags: createonlyiffileexists
- Name: "{userprograms}\ASO\Fuel\{cm:UninstallProgram,Fuel ASO}"; Filename: "{uninstallexe}"
- [Run]
- ;Filename: "{app}\dotNetFx45_Full_setup.exe"; WorkingDir: {app}; StatusMsg: Installation en cours de .NET Framework 4.5, cette opération peut prendre quelques minutes...; Check: NOT verifDotNet
- Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppExeName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent
- [Dirs]
- Name: "{commonappdata}\AsoFuel"; Languages: fr; Permissions: everyone-modify
- [Code]
- function IsDotNetDetected(version: string; service: cardinal): boolean;
- // Indicates whether the specified version and service pack of the .NET Framework is installed.
- //
- // version -- Specify one of these strings for the required .NET Framework version:
- // 'v1.1.4322' .NET Framework 1.1
- // 'v2.0.50727' .NET Framework 2.0
- // 'v3.0' .NET Framework 3.0
- // 'v3.5' .NET Framework 3.5
- // 'v4\Client' .NET Framework 4.0 Client Profile
- // 'v4\Full' .NET Framework 4.0 Full Installation
- // 'v4.5' .NET Framework 4.5
- //
- // service -- Specify any non-negative integer for the required service pack level:
- // 0 No service packs required
- // 1, 2, etc. Service pack 1, 2, etc. required
- var
- key: string;
- install, release, serviceCount: cardinal;
- check45, success: boolean;
- begin
- // .NET 4.5 installs as update to .NET 4.0 Full
- if version = 'v4.5' then begin
- version := 'v4\Full';
- check45 := true;
- end else
- check45 := false;
- // installation key group for all .NET versions
- key := 'SOFTWARE\Microsoft\NET Framework Setup\NDP\' + version;
- // .NET 3.0 uses value InstallSuccess in subkey Setup
- if Pos('v3.0', version) = 1 then begin
- success := RegQueryDWordValue(HKLM, key + '\Setup', 'InstallSuccess', install);
- end else begin
- success := RegQueryDWordValue(HKLM, key, 'Install', install);
- end;
- // .NET 4.0/4.5 uses value Servicing instead of SP
- if Pos('v4', version) = 1 then begin
- success := success and RegQueryDWordValue(HKLM, key, 'Servicing', serviceCount);
- end else begin
- success := success and RegQueryDWordValue(HKLM, key, 'SP', serviceCount);
- end;
- // .NET 4.5 uses additional value Release
- if check45 then begin
- success := success and RegQueryDWordValue(HKLM, key, 'Release', release);
- success := success and (release >= 378389);
- end;
- result := success and (install = 1) and (serviceCount >= service);
- end;
- function verifDotNet(): Boolean;
- begin
- result := IsDotNetDetected('v4.5', 0);
- end;
- function GetNumber(var temp: String): Integer;
- var
- part: String;
- pos1: Integer;
- begin
- if Length(temp) = 0 then
- begin
- Result := -1;
- Exit;
- end;
- pos1 := Pos('.', temp);
- if (pos1 = 0) then
- begin
- Result := StrToInt(temp);
- temp := '';
- end
- else
- begin
- part := Copy(temp, 1, pos1 - 1);
- temp := Copy(temp, pos1 + 1, Length(temp));
- Result := StrToInt(part);
- end;
- end;
- function CompareInner(var temp1, temp2: String): Integer;
- var
- num1, num2: Integer;
- begin
- num1 := GetNumber(temp1);
- num2 := GetNumber(temp2);
- if (num1 = -1) or (num2 = -1) then
- begin
- Result := 0;
- Exit;
- end;
- if (num1 > num2) then
- begin
- Result := 1;
- end
- else if (num1 < num2) then
- begin
- Result := -1;
- end
- else
- begin
- Result := CompareInner(temp1, temp2);
- end;
- end;
- function CompareVersion(str1, str2: String): Integer;
- var
- temp1, temp2: String;
- begin
- temp1 := str1;
- temp2 := str2;
- Result := CompareInner(temp1, temp2);
- end;
- function InitializeSetup(): Boolean;
- var
- oldVersion: String;
- uninstaller: String;
- ErrorCode: Integer;
- vCurID :String;
- vCurAppName :String;
- vCurVer :String;
- begin
- vCurID:= '{#SetupSetting("AppId")}';
- vCurAppName:= '{#SetupSetting("AppName")}';
- vCurVer := '{#SetupSetting("AppVersion")}';
- //remove first "{" of ID
- vCurID:= Copy(vCurID, 2, Length(vCurID) - 1);
- //
- if RegKeyExists(HKEY_LOCAL_MACHINE,
- 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + vCurID + '_is1') then
- begin
- RegQueryStringValue(HKEY_LOCAL_MACHINE,
- 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + vCurID + '_is1',
- 'DisplayVersion', oldVersion);
- if (CompareVersion(oldVersion, '{#SetupSetting("AppVersion")}') < 0) then
- begin
- if MsgBox('Version ' + oldVersion + ' of ' + vCurAppName + ' est déjà installée.' + #13 +#10 +'Voulez-vous installer la version '+vCurVer+' ?',
- mbConfirmation, MB_YESNO) = IDYES then
- begin
- RegQueryStringValue(HKEY_LOCAL_MACHINE,
- 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + vCurID + '_is1',
- 'UninstallString', uninstaller);
- ShellExec('runas', uninstaller, '/SILENT', '', SW_HIDE, ewWaitUntilTerminated, ErrorCode);
- Result := True;
- end
- else
- begin
- Result := False;
- end;
- end
- else
- begin
- if MsgBox('La version ' + oldVersion + ' of ' + vCurAppName + ' est déjà instalée.'+ #13+ #10+ 'Voulez-vous la désintaller et installer la version '+vCurVer+' ?',
- mbConfirmation, MB_YESNO) = IDYES then
- begin
- RegQueryStringValue(HKEY_LOCAL_MACHINE,
- 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\' + vCurID + '_is1',
- 'UninstallString', uninstaller);
- ShellExec('runas', uninstaller, '/SILENT', '', SW_HIDE, ewWaitUntilTerminated, ErrorCode);
- Result := True;
- end
- else
- begin
- Result := False;
- end
- end;
- end
- else
- begin
- Result := True;
- end;
- end;
|