mirror of
https://github.com/ShareX/ShareX.git
synced 2024-10-01 09:47:22 +13:00
Setup will install .NET Framework 4.0 and C++ Redistributable 2010 automatically
This commit is contained in:
parent
959a43ec66
commit
855ce3262f
52 changed files with 2013 additions and 14 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -108,5 +108,5 @@ Backup*/
|
||||||
UpgradeLog*.XML
|
UpgradeLog*.XML
|
||||||
|
|
||||||
# Additional
|
# Additional
|
||||||
Output/
|
InnoSetup/Output/
|
||||||
UploadersLib/APIKeys/APIKeysLocal.cs
|
UploadersLib/APIKeys/APIKeysLocal.cs
|
53
InnoSetup/Scripts/isxdl/czech.ini
Normal file
53
InnoSetup/Scripts/isxdl/czech.ini
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
[strings]
|
||||||
|
|
||||||
|
; Translation (c) 2005 Martin Kozák (martin.kozak@openoffice.cz)
|
||||||
|
|
||||||
|
; General
|
||||||
|
100=Stažení souboru
|
||||||
|
101=Přejete si přerušit stahování?
|
||||||
|
102=%1 (%2 z %3)
|
||||||
|
103=%1 KB
|
||||||
|
104=%1 KB z %2 KB (%3%)
|
||||||
|
|
||||||
|
; Status information
|
||||||
|
110=Získávání informací o souboru...
|
||||||
|
111=Přesměrování na %1
|
||||||
|
112=Odesílání požadavku...
|
||||||
|
113=Zpracování %1
|
||||||
|
114=Spojení s %1 navázáno
|
||||||
|
115=Přijímání...
|
||||||
|
116=Připojování k %1
|
||||||
|
|
||||||
|
; Error messages
|
||||||
|
120=Chyba při připojování k síti Internet.\n\n%1
|
||||||
|
121=Chyba při otevírání %1.\n\nServer nastavil návratový kód %2.
|
||||||
|
122=Chyba při čtení URL.\n\n%1
|
||||||
|
123=Chyba při zápisu do souboru %1.\n\n%2
|
||||||
|
124=Chyba při otevírání souboru %1.\n\n%2
|
||||||
|
125='%1' není platné URL.
|
||||||
|
126=Chyba při otevírání %1.\n\n%2
|
||||||
|
127=Chyba při zasílání požadavku.\n\n%1
|
||||||
|
128=Nepodporovaný protokol. Podporovány jsou pouze protokoly HTTP a FTP.
|
||||||
|
129=Pokus o připojení k %1 selhalo.\n\n%2
|
||||||
|
130=Pokus o získání návratového kódu serveru selhal.\n\n%1
|
||||||
|
131=Chyba při zadávání požadavku na soubor.\n\n%1
|
||||||
|
|
||||||
|
; Other
|
||||||
|
144=O knihovně...
|
||||||
|
146=Stažení komponent
|
||||||
|
147=Průvodce instalací stahuje přídavné komponenty do vašeho počítače.
|
||||||
|
|
||||||
|
; labels
|
||||||
|
160=Soubor:
|
||||||
|
161=Přenosová rychlost:
|
||||||
|
162=Stav:
|
||||||
|
163=Uplynulý čas:
|
||||||
|
164=Zbývající čas:
|
||||||
|
165=Zpracovávaný soubor:
|
||||||
|
166=Celkový průběh:
|
||||||
|
167=Zrušit
|
||||||
|
168=OK
|
||||||
|
169=Uživatelské jméno a heslo
|
||||||
|
170=Uživatelské jméno:
|
||||||
|
171=Heslo:
|
||||||
|
|
49
InnoSetup/Scripts/isxdl/english.ini
Normal file
49
InnoSetup/Scripts/isxdl/english.ini
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
[strings]
|
||||||
|
; General
|
||||||
|
100=File Download
|
||||||
|
101=Do you want to cancel the download?
|
||||||
|
102=%1 (%2 of %3)
|
||||||
|
103=%1 KB
|
||||||
|
104=%1 KB of %2 KB (%3%)
|
||||||
|
|
||||||
|
; Status information
|
||||||
|
110=Getting file information...
|
||||||
|
111=Redirecting to %1
|
||||||
|
112=Sending request...
|
||||||
|
113=Resolving %1
|
||||||
|
114=Connected to %1
|
||||||
|
115=Receiving...
|
||||||
|
116=Connecting to %1
|
||||||
|
|
||||||
|
; Error messages
|
||||||
|
120=Error connecting to Internet.\n\n%1
|
||||||
|
121=Error opening %1.\n\nThe server returned status code %2.
|
||||||
|
122=Error reading URL.\n\n%1
|
||||||
|
123=Error writing file %1.\n\n%2
|
||||||
|
124=Error opening file %1.\n\n%2
|
||||||
|
125='%1' is an invalid URL.
|
||||||
|
126=Error opening %1.\n\n%2
|
||||||
|
127=Error sending request.\n\n%1
|
||||||
|
128=Unsupported protocol. Only HTTP and FTP protocols are supported.
|
||||||
|
129=Failed to connect to %1.\n\n%2
|
||||||
|
130=Failed to query status code.\n\n%1
|
||||||
|
131=Error requesting file.\n\n%1
|
||||||
|
|
||||||
|
; Other
|
||||||
|
144=About...
|
||||||
|
146=Download
|
||||||
|
147=Setup is now downloading additional files to your computer.
|
||||||
|
|
||||||
|
; labels
|
||||||
|
160=File:
|
||||||
|
161=Speed:
|
||||||
|
162=Status:
|
||||||
|
163=Elapsed Time:
|
||||||
|
164=Remaining Time:
|
||||||
|
165=Current File:
|
||||||
|
166=Overall Progress:
|
||||||
|
167=Cancel
|
||||||
|
168=OK
|
||||||
|
169=User Name and Password
|
||||||
|
170=User Name:
|
||||||
|
171=Password:
|
45
InnoSetup/Scripts/isxdl/french.ini
Normal file
45
InnoSetup/Scripts/isxdl/french.ini
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
[strings]
|
||||||
|
; General
|
||||||
|
100=Téléchargement des fichiers...
|
||||||
|
101=Souhaitez-vous annuler le téléchargement ?
|
||||||
|
102=%1 (%2 / %3)
|
||||||
|
103=%1 Ko
|
||||||
|
104=%1 Ko / %2 Ko (%3%)
|
||||||
|
|
||||||
|
; Etat du téléchargement
|
||||||
|
110=Accès au fichier...
|
||||||
|
111=Redirection vers %1
|
||||||
|
112=Envoi de la requête...
|
||||||
|
113=Recherche %1
|
||||||
|
114=Connecté à %1
|
||||||
|
115=Réception...
|
||||||
|
116=Connexion à %1
|
||||||
|
|
||||||
|
; Messages d'erreur
|
||||||
|
120=Impossible de se connecter à Internet.\n\n%1
|
||||||
|
121=Impossible d'ouvrir %1.\n\nLe serveur a renvoyé le code d'erreur %2.
|
||||||
|
122=Impossible de lire l'adresse.\n\n%1
|
||||||
|
123=Impossible de créer le fichier %1.\n\n%2
|
||||||
|
124=Impossible d'ouvrir le fichier %1.\n\n%2
|
||||||
|
125='%1' est une adresse incorrecte.
|
||||||
|
126=Impossible d'ouvrir %1.\n\n%2
|
||||||
|
127=Impossible d'accéder au serveur.\n\n%1
|
||||||
|
128=Protocole non supporté. Seuls les protocoles HTTP et FTP sont pris en charge.
|
||||||
|
129=Impossible de se connecter à %1.\n\n%2
|
||||||
|
130=Impossible de récupérer le code d'état.\n\n%1
|
||||||
|
131=Impossible de récupérer le fichier.\n\n%1
|
||||||
|
|
||||||
|
; Autre
|
||||||
|
144=A propos...
|
||||||
|
146=Téléchargement
|
||||||
|
147=Certains fichiers requis vont être téléchargés.
|
||||||
|
|
||||||
|
; Labels
|
||||||
|
160=Fichier :
|
||||||
|
161=Vitesse :
|
||||||
|
162=Etat :
|
||||||
|
163=Temps écoulé :
|
||||||
|
164=Temps restant :
|
||||||
|
165=Fichier courant :
|
||||||
|
166=Tous les fichiers :
|
||||||
|
167=Annuler
|
45
InnoSetup/Scripts/isxdl/french2.ini
Normal file
45
InnoSetup/Scripts/isxdl/french2.ini
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
[strings]
|
||||||
|
; General
|
||||||
|
100=Téléchargement de fichier
|
||||||
|
101=Voulez vous annuler le téléchargement ?
|
||||||
|
102=%1 (%2 de %3)
|
||||||
|
103=%1 KB
|
||||||
|
104=%1 KB de %2 KB (%3%)
|
||||||
|
|
||||||
|
; Status information
|
||||||
|
110=Réception des informations du fichier...
|
||||||
|
111=Redirection vers %1
|
||||||
|
112=envoie de la demande...
|
||||||
|
113=Résolution %1
|
||||||
|
114=Connecté a %1
|
||||||
|
115=Réception...
|
||||||
|
116=Connexion à %1
|
||||||
|
|
||||||
|
; Error messages
|
||||||
|
120=Erreur de connexion à Internet.\n\n%1
|
||||||
|
121=Erreur d'ouverture%1.\n\nLe Serveur à répondu par le code d'état %2.
|
||||||
|
122=Erreur de lecture de l'URL.\n\n%1
|
||||||
|
123=Erreur d'écriture du fichier %1.\n\n%2
|
||||||
|
124=Erreur d'ouverture du fichier %1.\n\n%2
|
||||||
|
125='%1' est une URL invalide.
|
||||||
|
126=Erreur d’ouverture %1.\n\n%2
|
||||||
|
127=Erreur pendant l'envoi de la demande.\n\n%1
|
||||||
|
128=Protocole non supporté. Seuls les protocoles HTTP et FTP sont acceptés.
|
||||||
|
129=Echec de connexion à %1.\n\n%2
|
||||||
|
130=Echec d'obtention du code d'état.\n\n%1
|
||||||
|
131=Erreur lors de la demande du fichier.\n\n%1
|
||||||
|
|
||||||
|
; Other
|
||||||
|
144=A Propos...
|
||||||
|
146=Téléchargement
|
||||||
|
147=LiveUpdate télécharge maintenant des fichiers complémentaires sur votre ordinateur.
|
||||||
|
|
||||||
|
; labels
|
||||||
|
160=Fichier:
|
||||||
|
161=Vitesse:
|
||||||
|
162=Etat:
|
||||||
|
163=Temps écoulé:
|
||||||
|
164=Temps restant:
|
||||||
|
165=Fichier en cours:
|
||||||
|
166=Avancement global:
|
||||||
|
167=Annuler
|
46
InnoSetup/Scripts/isxdl/french3.ini
Normal file
46
InnoSetup/Scripts/isxdl/french3.ini
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
; By Fabien ILLIDE (fabienillide@users.sourceforge.net)
|
||||||
|
[strings]
|
||||||
|
; General
|
||||||
|
100=Téléchargement de fichier
|
||||||
|
101=Voulez-vous annuler le téléchargement ?
|
||||||
|
102=%1 (%2 de %3)
|
||||||
|
103=%1 Ko
|
||||||
|
104=%1 Ko de %2 Ko (%3%)
|
||||||
|
|
||||||
|
; Status information
|
||||||
|
110=Obtention des informations du fichier...
|
||||||
|
111=Redirection vers %1
|
||||||
|
112=Envoi de la requête...
|
||||||
|
113=Résolution de %1
|
||||||
|
114=Connecté à %1
|
||||||
|
115=Réception...
|
||||||
|
116=Connexion à %1
|
||||||
|
|
||||||
|
; Error messages
|
||||||
|
120=Erreur de connexion à Internet.\n\n%1
|
||||||
|
121=Erreur en ouvrant %1.\n\nLe serveur à retourné le code d'état %2.
|
||||||
|
122=Erreur de lecture d'URL.\n\n%1
|
||||||
|
123=Erreur d'écriture pour %1.\n\n%2
|
||||||
|
124=Erreur en ouvrant le fichier %1.\n\n%2
|
||||||
|
125='%1' est une URL invalide.
|
||||||
|
126=Erreur en ouvrant %1.\n\n%2
|
||||||
|
127=Erreur d'envoi de requête.\n\n%1
|
||||||
|
128=Protocole non supporté. Seuls les protocoles HTTP et FTP sont supportés.
|
||||||
|
129=Echec de connexion à %1.\n\n%2
|
||||||
|
130=Echec de demande du code d'état.\n\n%1
|
||||||
|
131=Erreur en demandant le fichier.\n\n%1
|
||||||
|
|
||||||
|
; Other
|
||||||
|
144=A propos...
|
||||||
|
146=Télécharger
|
||||||
|
147=L'installateur télécharge maintenant les fichiers additionnels sur votre ordinateur.
|
||||||
|
|
||||||
|
; labels
|
||||||
|
160=Fichier :
|
||||||
|
161=Vitesse :
|
||||||
|
162=Etat :
|
||||||
|
163=Temps écoulé :
|
||||||
|
164=Temps restant :
|
||||||
|
165=Fichier en cours :
|
||||||
|
166=Avancement global :
|
||||||
|
167=Annuler
|
46
InnoSetup/Scripts/isxdl/german.ini
Normal file
46
InnoSetup/Scripts/isxdl/german.ini
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
;by E. Wörner
|
||||||
|
[strings]
|
||||||
|
; General
|
||||||
|
100=Dateidownload
|
||||||
|
101=Möchten Sie den Download der Dateien abbrechen?
|
||||||
|
102=%1 (%2 von %3)
|
||||||
|
103=%1 KB
|
||||||
|
104=%1 KB von %2 KB (%3%)
|
||||||
|
|
||||||
|
; Status information
|
||||||
|
110=Empfang von Dateiinformationen...
|
||||||
|
111=Weiterleitung zu %1
|
||||||
|
112=Senden der Anfrage...
|
||||||
|
113=Auflösen von %1
|
||||||
|
114=Verbunden mit %1
|
||||||
|
115=Empfang...
|
||||||
|
116=Verbinden mit %1
|
||||||
|
|
||||||
|
; Error messages
|
||||||
|
120=Fehler bei der Herstellung einer Verbindung ins Internet.\n\n%1
|
||||||
|
121=Fehler beim Öffnen von %1.\n\nDer Server sendete Code %2.
|
||||||
|
122=Fehler beim Lesen der URL.\n\n%1
|
||||||
|
123=Fehler beim Schreiben der Datei %1.\n\n%2
|
||||||
|
124=Fehler beim Öffnen der Datei %1.\n\n%2
|
||||||
|
125='%1' ist eine ungültige URL.
|
||||||
|
126=Fehler beim Öffnen von %1.\n\n%2
|
||||||
|
127=Fehler beim Senden der Anfrage.\n\n%1
|
||||||
|
128=Nicht unterstütztes Protokoll. FTP und HTTP sind die einzigen unterstützten Protokolle.
|
||||||
|
129=Fehler beim Verbinden mit %1.\n\n%2
|
||||||
|
130=Fehler beim Auflösen des Statuscodes.\n\n%1
|
||||||
|
131=Fehler beim Anfordern einer Datei.\n\n%1
|
||||||
|
|
||||||
|
; Other
|
||||||
|
144=Über...
|
||||||
|
146=Download
|
||||||
|
147=Setup lädt jetzt zusätzliche Dateien für das Setup.
|
||||||
|
|
||||||
|
; labels
|
||||||
|
160=Datei:
|
||||||
|
161=Geschwindigkeit:
|
||||||
|
162=Status:
|
||||||
|
163=Vergangene Zeit:
|
||||||
|
164=Verbleibende Zeit:
|
||||||
|
165=Aktuelle Datei:
|
||||||
|
166=Gesamter Fortschritt:
|
||||||
|
167=Abbrechen
|
45
InnoSetup/Scripts/isxdl/german2.ini
Normal file
45
InnoSetup/Scripts/isxdl/german2.ini
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
[strings]
|
||||||
|
; General
|
||||||
|
100=Datei herunterladen
|
||||||
|
101=Möchten Sie das Herunterladen der Datei abbrechen?
|
||||||
|
102=%1 (%2 von %3)
|
||||||
|
103=%1 KB
|
||||||
|
104=%1 KB von %2 KB (%3%)
|
||||||
|
|
||||||
|
; Status information
|
||||||
|
110=Dateiinformationen werden ermittelt...
|
||||||
|
111=Weitervermittlung zu %1
|
||||||
|
112=Anforderung wird gesendet...
|
||||||
|
113=Auflösen von %1
|
||||||
|
114=Mit %1 verbunden
|
||||||
|
115=Empfang...
|
||||||
|
116=Verbinden mit %1
|
||||||
|
|
||||||
|
; Error messages
|
||||||
|
120=Fehler beim Verbinden mit dem Internet.\n\n%1
|
||||||
|
121=Fehler beim Öffnen von %1.\n\nDer Server hat folgenden Statuscode gemeldet %2.
|
||||||
|
122=Fehler beim Lesen der URL.\n\n%1
|
||||||
|
123=Fehler beim Schreiben der Datei %1.\n\n%2
|
||||||
|
124=Fehler beim Öffnen der Datei %1.\n\n%2
|
||||||
|
125='%1' ist eine ungültige URL.
|
||||||
|
126=Fehler beim Öffnen von %1.\n\n%2
|
||||||
|
127=Fehler beim Senden der Anforderung.\n\n%1
|
||||||
|
128=Protokoll wird nicht unterstützt. Nur HTTP und FTP werden unterstützt.
|
||||||
|
129=Verbindung zu %1 fehlgeschlagen.\n\n%2
|
||||||
|
130=Fehler bei der Abfrage des Statuscodes.\n\n%1
|
||||||
|
131=Fehler bei der Anforderung der Datei.\n\n%1
|
||||||
|
|
||||||
|
; Other
|
||||||
|
144=Über...
|
||||||
|
146=Download
|
||||||
|
147=Das Setup lädt nun zusätzliche Dateien auf Ihren Computer.
|
||||||
|
|
||||||
|
; labels
|
||||||
|
160=Datei:
|
||||||
|
161=Geschwindigkeit:
|
||||||
|
162=Status:
|
||||||
|
163=Bisherige Zeit:
|
||||||
|
164=Verbleibende Zeit:
|
||||||
|
165=Derzeitige Datei:
|
||||||
|
166=Gesamter Vorgang:
|
||||||
|
167=Abbrechen
|
45
InnoSetup/Scripts/isxdl/german3.ini
Normal file
45
InnoSetup/Scripts/isxdl/german3.ini
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
[strings]
|
||||||
|
; General
|
||||||
|
100=Datei-Download
|
||||||
|
101=Möchten Sie das Herunterladen abbrechen?
|
||||||
|
102=%1 (%2 von %3)
|
||||||
|
103=%1 KB
|
||||||
|
104=%1 KB von %2 KB (%3%)
|
||||||
|
|
||||||
|
; Status information
|
||||||
|
110=Ermittle Datei-Informationen...
|
||||||
|
111=Leite um nach %1
|
||||||
|
112=Sende Anforderung...
|
||||||
|
113=Auflösen %1
|
||||||
|
114=Verbunden mit %1
|
||||||
|
115=Empfange...
|
||||||
|
116=Verbinde mit %1
|
||||||
|
|
||||||
|
; Error messages
|
||||||
|
120=Fehler beim Verbinden mit dem Internet.\n\n%1
|
||||||
|
121=Fehler beim Öffnen von %1.\n\nDer Server meldet Statuscode %2.
|
||||||
|
122=Fehler beim Lesen der URL.\n\n%1
|
||||||
|
123=Fehler beim Schreiben der Datei %1.\n\n%2
|
||||||
|
124=Fehler beim Öffnen der Datei %1.\n\n%2
|
||||||
|
125='%1' ist eine ungültige URL.
|
||||||
|
126=Fehler beim Öffnen von %1.\n\n%2
|
||||||
|
127=Fehler beim Senden der Anforderung.\n\n%1
|
||||||
|
128=Nicht unterstütztes Protokoll. Nur HTTP- and FTP-Protokolle werden unterstützt.
|
||||||
|
129=Verbindung fehlgeschlagen: %1.\n\n%2
|
||||||
|
130=Abfragen des Statuscodes fehlgeschlagen.\n\n%1
|
||||||
|
131=Fehler beim Anfordern der Datei.\n\n%1
|
||||||
|
|
||||||
|
; Other
|
||||||
|
144=Über...
|
||||||
|
146=Download
|
||||||
|
147=Setup lädt nun weitere Dateien aus dem Internet auf Ihren Computer herunter.
|
||||||
|
|
||||||
|
; labels
|
||||||
|
160=Datei:
|
||||||
|
161=Geschwindigkeit:
|
||||||
|
162=Status:
|
||||||
|
163=Verstrichene Zeit:
|
||||||
|
164=Verbleibende Zeit:
|
||||||
|
165=Aktuelle Datei:
|
||||||
|
166=Gesamter Download:
|
||||||
|
167=Abbrechen
|
BIN
InnoSetup/Scripts/isxdl/isxdl.dll
Normal file
BIN
InnoSetup/Scripts/isxdl/isxdl.dll
Normal file
Binary file not shown.
14
InnoSetup/Scripts/isxdl/isxdl.iss
Normal file
14
InnoSetup/Scripts/isxdl/isxdl.iss
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
[Files]
|
||||||
|
Source: "scripts\isxdl\isxdl.dll"; Flags: dontcopy
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
//replace PAnsiChar with PChar on non-unicode Inno Setup
|
||||||
|
procedure isxdl_AddFile(URL, Filename: PAnsiChar);
|
||||||
|
external 'isxdl_AddFile@files:isxdl.dll stdcall';
|
||||||
|
|
||||||
|
function isxdl_DownloadFiles(hWnd: Integer): Integer;
|
||||||
|
external 'isxdl_DownloadFiles@files:isxdl.dll stdcall';
|
||||||
|
|
||||||
|
//replace PAnsiChar with PChar on non-unicode Inno Setup
|
||||||
|
function isxdl_SetOption(Option, Value: PAnsiChar): Integer;
|
||||||
|
external 'isxdl_SetOption@files:isxdl.dll stdcall';
|
47
InnoSetup/Scripts/isxdl/norwegian.ini
Normal file
47
InnoSetup/Scripts/isxdl/norwegian.ini
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
[strings]
|
||||||
|
; General
|
||||||
|
100=Nedlasting
|
||||||
|
101=Vil du avbryte nedlastinga?
|
||||||
|
102=%1 (%2 av %3)
|
||||||
|
103=%1 KB
|
||||||
|
104=%1 KB av %2 KB (%3%)
|
||||||
|
|
||||||
|
; Status information
|
||||||
|
110=Henter filinformasjon...
|
||||||
|
111=Omdirigerer til %1
|
||||||
|
112=Sender forespørsel...
|
||||||
|
113=Resolving %1
|
||||||
|
114=Oppkoblet mot %1
|
||||||
|
115=Mottar...
|
||||||
|
116=Kobler til %1
|
||||||
|
; Error messages
|
||||||
|
120=Feil ved oppkobling til Internett.\n\n%1
|
||||||
|
121=Feil ved åpning av %1.\n\nTjeneren returnerte statuskode %2.
|
||||||
|
122=Feil ved lesing av URL.\n\n%1
|
||||||
|
123=Feil ved skriving til '%1'.\n\n%2
|
||||||
|
124=Feil ved åpning av '%1'.\n\n%2
|
||||||
|
125='%1' er ikke en gyldig url.
|
||||||
|
126=Feil ved åpning av %1.\n\n%2
|
||||||
|
127=Feil ved sending av forespørsel.\n\n%1
|
||||||
|
128=Ikke støttet protokoll. Bare HTTP og FTP protokoller er støttet.
|
||||||
|
129=Klarte ikke å koble til %1.\n\n%2
|
||||||
|
130=Klarte ikke å lese statuskode.\n\n%1
|
||||||
|
131=Feil ved forespørsel av fil.\n\n%1
|
||||||
|
; Other
|
||||||
|
144=Om...
|
||||||
|
146=Nedlasting
|
||||||
|
147=Setup laster nå ned flere filer til din datamaskin.
|
||||||
|
|
||||||
|
; labels
|
||||||
|
160=Fil:
|
||||||
|
161=Hastighet:
|
||||||
|
162=Status:
|
||||||
|
163=Brukt tid:
|
||||||
|
164=Gjenstående tid:
|
||||||
|
165=Gjeldende fil:
|
||||||
|
166=Total fremgang:
|
||||||
|
167=Avbryt
|
||||||
|
168=OK
|
||||||
|
169=Brukernavn og passord
|
||||||
|
170=Brukernavn:
|
||||||
|
171=Passord:
|
45
InnoSetup/Scripts/isxdl/polish.ini
Normal file
45
InnoSetup/Scripts/isxdl/polish.ini
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
[strings]
|
||||||
|
; General
|
||||||
|
100=Pobieranie pliku
|
||||||
|
101=Czy chcesz przerwać pobieranie?
|
||||||
|
102=%1 (%2 z %3)
|
||||||
|
103=%1 KB
|
||||||
|
104=%1 KB z %2 KB (%3%)
|
||||||
|
|
||||||
|
; Status information
|
||||||
|
110=Pobieranie informacji o pliku...
|
||||||
|
111=Przekierowywanie do %1
|
||||||
|
112=Wysyłanie żądania...
|
||||||
|
113=Rozwiązywanie %1
|
||||||
|
114=Połączony z %1
|
||||||
|
115=Pobieranie...
|
||||||
|
116=Podłączanie do %1
|
||||||
|
|
||||||
|
; Error messages
|
||||||
|
120=Nie można podłączyć się do Internetu.\n\n%1
|
||||||
|
121=Błąd otwierania %1.\n\nSerwer zwrócił kod błędu %2.
|
||||||
|
122=Błąd czytania URL.\n\n%1
|
||||||
|
123=Błąd zapisu pliku %1.\n\n%2
|
||||||
|
124=Błąd otwarcia pliku %1.\n\n%2
|
||||||
|
125='%1' nie jest prawidłowym URL.
|
||||||
|
126=Błąd otwarcia %1.\n\n%2
|
||||||
|
127=Błąd wysłania żądania.\n\n%1
|
||||||
|
128=Nieznany protokół. Tylko protokoły HTTP i FTP są obsługiwane.
|
||||||
|
129=Nie udało się podłączenie do %1.\n\n%2
|
||||||
|
130=Nie udało się zapytać o kod stanu.\n\n%1
|
||||||
|
131=Błąd żądania pliku.\n\n%1
|
||||||
|
|
||||||
|
; Other
|
||||||
|
144=O pobieraniu...
|
||||||
|
146=Pobieranie
|
||||||
|
147=W tej chwili Instalator pobiera dodatkowe pliki do Twojego komputera.
|
||||||
|
|
||||||
|
; labels
|
||||||
|
160=Plik:
|
||||||
|
161=Prędkość:
|
||||||
|
162=Stan:
|
||||||
|
163=Upłynęło:
|
||||||
|
164=Pozostały czas:
|
||||||
|
165=Aktualny plik:
|
||||||
|
166=Całkowity postęp:
|
||||||
|
167=Anuluj
|
45
InnoSetup/Scripts/isxdl/portugues.ini
Normal file
45
InnoSetup/Scripts/isxdl/portugues.ini
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
[strings]
|
||||||
|
; General
|
||||||
|
100=Donwload de ficheiro
|
||||||
|
101=Deseja cancelar o donwload?
|
||||||
|
102=%1 (%2 de %3)
|
||||||
|
103=%1 KB
|
||||||
|
104=%1 KB de %2 KB (%3%)
|
||||||
|
|
||||||
|
; Status information
|
||||||
|
110=A receber informação do ficheiro...
|
||||||
|
111=A redirecionar para %1
|
||||||
|
112=A enviar pedido...
|
||||||
|
113=A resolver %1
|
||||||
|
114=Ligado a %1
|
||||||
|
115=A receber...
|
||||||
|
116=A ligar a %1
|
||||||
|
|
||||||
|
; Error messages
|
||||||
|
120=Erro na ligação à internet.\n\n%1
|
||||||
|
121=Erro na abertura de %1.\n\nO servidor retornou o código de erro %2.
|
||||||
|
122=Erro a ler o URL.\n\n%1
|
||||||
|
123=Erro na escrita do ficheiro %1.\n\n%2
|
||||||
|
124=Erro na abertura do ficheiro %1.\n\n%2
|
||||||
|
125='%1' é um URL inválido.
|
||||||
|
126=Erro na abertura de %1.\n\n%2
|
||||||
|
127=Erro no envio do pedido.\n\n%1
|
||||||
|
128=Protocolo não suportado.
|
||||||
|
129=Falha na ligação a %1.\n\n%2
|
||||||
|
130=Falha na tentativa de retirar o código de status.\n\n%1
|
||||||
|
131=Erro no pedido do ficheiro.\n\n%1
|
||||||
|
|
||||||
|
; Other
|
||||||
|
144=Acerca...
|
||||||
|
146=Download
|
||||||
|
147=A instalação está a efectuar o download de ficheiros adicionais necessários.
|
||||||
|
|
||||||
|
; labels
|
||||||
|
160=Ficheiro:
|
||||||
|
161=Velocidade:
|
||||||
|
162=Estado:
|
||||||
|
163=Tempo usado:
|
||||||
|
164=Tempo em falta:
|
||||||
|
165=Ficheiro:
|
||||||
|
166=Progresso:
|
||||||
|
167=Cancelar
|
46
InnoSetup/Scripts/isxdl/portuguese.ini
Normal file
46
InnoSetup/Scripts/isxdl/portuguese.ini
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
; By António Pinto (AP SoftWare)
|
||||||
|
[strings]
|
||||||
|
; Geral
|
||||||
|
100=Download
|
||||||
|
101=Deseja cancelar o download?
|
||||||
|
102=%1 (%2 de %3)
|
||||||
|
103=%1 Kb
|
||||||
|
104=%1 Kb de %2 Kb (%3%)
|
||||||
|
|
||||||
|
; Status information
|
||||||
|
110=A receber informação do ficheiro...
|
||||||
|
111=Redireccionando a %1
|
||||||
|
112=A enviar petição...
|
||||||
|
113=Resolvendo %1
|
||||||
|
114=Ligado a %1
|
||||||
|
115=A receber...
|
||||||
|
116=A efectuar ligação a %1
|
||||||
|
|
||||||
|
; Error messages
|
||||||
|
120=Erro a ligar à Internet.\n\n%1
|
||||||
|
121=Erro ao abrir %1.\n\nO servidor devolveu o código %2.
|
||||||
|
122=Erro ao ler URL.\n\n%1
|
||||||
|
123=Erro ao escrever o ficheiro %1.\n\n%2
|
||||||
|
124=Erro ao abrir o ficheiro %1.\n\n%2
|
||||||
|
125='%1' é uma URL inválida.
|
||||||
|
126=Erro ao abrir %1.\n\n%2
|
||||||
|
127=Erro ao enviar a petição.\n\n%1
|
||||||
|
128=Erro de protocolo. Só os protocolos HTTP ou FTP são aceites.
|
||||||
|
129=Erro ao ligar a %1.\n\n%2
|
||||||
|
130=Erro ao processar o código.\n\n%1
|
||||||
|
131=Erro ao procurar o ficheiro.\n\n%1
|
||||||
|
|
||||||
|
; Other
|
||||||
|
144=Acerca...
|
||||||
|
146=Descarregar
|
||||||
|
147=O assistente está a descarregar ficheiros para o seu computador.
|
||||||
|
|
||||||
|
; labels
|
||||||
|
160=Ficheiro:
|
||||||
|
161=Velocidade:
|
||||||
|
162=Estado:
|
||||||
|
163=Tempo transcorrido:
|
||||||
|
164=Tempo estimado:
|
||||||
|
165=Ficheiro actual:
|
||||||
|
166=Progressão geral:
|
||||||
|
167=Cancelar
|
50
InnoSetup/Scripts/isxdl/russian.ini
Normal file
50
InnoSetup/Scripts/isxdl/russian.ini
Normal file
|
@ -0,0 +1,50 @@
|
||||||
|
[strings]
|
||||||
|
; General
|
||||||
|
100=Загрузка файла
|
||||||
|
101=Хотите прекратить загрузку?
|
||||||
|
102=%1 (%2 из %3)
|
||||||
|
103=%1 KB
|
||||||
|
104=%1 KB из %2 KB (%3%)
|
||||||
|
|
||||||
|
; Status information
|
||||||
|
110=Получение информации о файле...
|
||||||
|
111=Переход на %1
|
||||||
|
112=Отправка запроса...
|
||||||
|
113=Получение доступа %1
|
||||||
|
114=Соединение с %1
|
||||||
|
115=Получение...
|
||||||
|
116=Соединение с %1
|
||||||
|
|
||||||
|
; Error messages
|
||||||
|
120=Ошибка подключения к Интернет.\n\n%1
|
||||||
|
121=Ошибка открытия %1.\n\nСервер вернул код ошибки %2.
|
||||||
|
122=Ошибка чтения адреса.\n\n%1
|
||||||
|
123=Ошибка записи файла %1.\n\n%2
|
||||||
|
124=Ошибка открытия файла %1.\n\n%2
|
||||||
|
125='%1' неправильный адрес Интернет.
|
||||||
|
126=Ошибка открытия %1.\n\n%2
|
||||||
|
127=Ошибка при посылке запроса.\n\n%1
|
||||||
|
128=Протокол не поддерживается. Только протоколы HTTP и FTP поддерживаются
|
||||||
|
программой.
|
||||||
|
129=Невозможно подключиться к %1.\n\n%2
|
||||||
|
130=Неозможно получить код статуса.\n\n%1
|
||||||
|
131=Ошибка при запросе файла.\n\n%1
|
||||||
|
|
||||||
|
; Other
|
||||||
|
144=О...
|
||||||
|
146=Загрузка
|
||||||
|
147=Сейчас произойдет загрузка дополнительный файлов на Ваш компьютер.
|
||||||
|
|
||||||
|
; labels
|
||||||
|
160=Файл:
|
||||||
|
161=Скорость:
|
||||||
|
162=Статус:
|
||||||
|
163=Прошло времени:
|
||||||
|
164=Осталось времени:
|
||||||
|
165=Текущий файл:
|
||||||
|
166=Всего закачено:
|
||||||
|
167=Отмена
|
||||||
|
168=OK
|
||||||
|
169=Имя пользователя и пароль
|
||||||
|
170=Имя пользователя:
|
||||||
|
171=Пароль:
|
46
InnoSetup/Scripts/isxdl/spanish.ini
Normal file
46
InnoSetup/Scripts/isxdl/spanish.ini
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
; By Lobo Lunar
|
||||||
|
[strings]
|
||||||
|
; General
|
||||||
|
100=Descarga
|
||||||
|
101=¿Deseas cancelar la descarga?
|
||||||
|
102=%1 (%2 de %3)
|
||||||
|
103=%1 KB
|
||||||
|
104=%1 KB de %2 KB (%3%)
|
||||||
|
|
||||||
|
; Status information
|
||||||
|
110=Recibiendo información del archivo...
|
||||||
|
111=Redireccionando a %1
|
||||||
|
112=Enviando petición...
|
||||||
|
113=Resolviendo %1
|
||||||
|
114=Conectando a %1
|
||||||
|
115=Descargando...
|
||||||
|
116=Conectando a %1
|
||||||
|
|
||||||
|
; Error messages
|
||||||
|
120=Error al conectar a Internet.\n\n%1
|
||||||
|
121=Error al abrir %1.\n\nEl servidor regresó %2.
|
||||||
|
122=Error al leer URL.\n\n%1
|
||||||
|
123=Error al escribir el archivo %1.\n\n%2
|
||||||
|
124=Error al abrir archivo %1.\n\n%2
|
||||||
|
125='%1' es URL inválido.
|
||||||
|
126=Error al abrir %1.\n\n%2
|
||||||
|
127=Error al mandar petición.\n\n%1
|
||||||
|
128=Error de protocolo. Sólo HTTP o FTP son aceptados.
|
||||||
|
129=Error al conectar a %1.\n\n%2
|
||||||
|
130=Error al procesar el código.\n\n%1
|
||||||
|
131=Error al buscar archivo.\n\n%1
|
||||||
|
|
||||||
|
; Other
|
||||||
|
144=Acerca...
|
||||||
|
146=Descargar
|
||||||
|
147=El asistente está descargando archivos.
|
||||||
|
|
||||||
|
; labels
|
||||||
|
160=Archivo:
|
||||||
|
161=Velocidad:
|
||||||
|
162=Estado:
|
||||||
|
163=Tiempo transcurrido:
|
||||||
|
164=Tiempo estimado:
|
||||||
|
165=Archivo actual:
|
||||||
|
166=Progreso general:
|
||||||
|
167=Cancelar
|
48
InnoSetup/Scripts/isxdl/swedish.ini
Normal file
48
InnoSetup/Scripts/isxdl/swedish.ini
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
[strings]
|
||||||
|
; General
|
||||||
|
100=Fil Nedladdning
|
||||||
|
101=Vill du avbruta nedladdningen?
|
||||||
|
102=%1 (%2 av %3)
|
||||||
|
103=%1 KB
|
||||||
|
104=%1 KB av %2 KB (%3%)
|
||||||
|
|
||||||
|
; Status information
|
||||||
|
110=Hämtar fil information...
|
||||||
|
111=Omdirigerar till %1
|
||||||
|
112=Sänder förfrågan...
|
||||||
|
113=Delar upp %1
|
||||||
|
114=Ansluten %1
|
||||||
|
115=Tar emot...
|
||||||
|
116=Ansluter till %1
|
||||||
|
|
||||||
|
; Error messages
|
||||||
|
120=Fel vid anslutning till Internet.\n\n%1
|
||||||
|
121=Fel vid öppning av %1.\n\nServern returnerade felkod %2.
|
||||||
|
122=Fel vid läsninga av URL.\n\n%1
|
||||||
|
123=Fel vid skrivning av fil %1.\n\n%2
|
||||||
|
124=Fel vid öppning av fil %1.\n\n%2
|
||||||
|
125='%1' är en felaktig URL.
|
||||||
|
126=Kan inte öppna %1.\n\n%2
|
||||||
|
127=Fel vid sändning av förfrågan.\n\n%1
|
||||||
|
128=Stöd saknas för protokollet. Endast HTTP och FTP protokollen understöds.
|
||||||
|
129=Misslyckades att ansluta till %1.\n\n%2
|
||||||
|
130=Misslyckades att kontrollera status kod.\n\n%1
|
||||||
|
131=Fel vid förfrågan efter fil.\n\n%1
|
||||||
|
|
||||||
|
; Other
|
||||||
|
144=Om...
|
||||||
|
146=Ladd ner
|
||||||
|
147=Setup laddar nu ner tilläggsfiler till din dator
|
||||||
|
; labels
|
||||||
|
160=Fil:
|
||||||
|
161=Hastighet:
|
||||||
|
162=Status:
|
||||||
|
163=Förfluten Time:
|
||||||
|
164=Återstående Time:
|
||||||
|
165=Nuvarande Fil:
|
||||||
|
166=Totalt Förlopp:
|
||||||
|
167=Avbryt
|
||||||
|
168=OK
|
||||||
|
169=Användarnamn och Lösenord
|
||||||
|
170=Användarnamn:
|
||||||
|
171=Lösenord:
|
267
InnoSetup/Scripts/products.iss
Normal file
267
InnoSetup/Scripts/products.iss
Normal file
|
@ -0,0 +1,267 @@
|
||||||
|
#include "isxdl\isxdl.iss"
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
DependenciesDir=MyProgramDependencies
|
||||||
|
|
||||||
|
en.depdownload_msg=The following applications are required before setup can continue:%n%n%1%nDownload and install now?
|
||||||
|
de.depdownload_msg=Die folgenden Programme werden benötigt bevor das Setup fortfahren kann:%n%n%1%nJetzt downloaden und installieren?
|
||||||
|
|
||||||
|
en.depdownload_memo_title=Download dependencies
|
||||||
|
de.depdownload_memo_title=Abhängigkeiten downloaden
|
||||||
|
|
||||||
|
en.depinstall_memo_title=Install dependencies
|
||||||
|
de.depinstall_memo_title=Abhängigkeiten installieren
|
||||||
|
|
||||||
|
en.depinstall_title=Installing dependencies
|
||||||
|
de.depinstall_title=Installiere Abhängigkeiten
|
||||||
|
|
||||||
|
en.depinstall_description=Please wait while Setup installs dependencies on your computer.
|
||||||
|
de.depinstall_description=Warten Sie bitte während Abhängigkeiten auf Ihrem Computer installiert wird.
|
||||||
|
|
||||||
|
en.depinstall_status=Installing %1...
|
||||||
|
de.depinstall_status=Installiere %1...
|
||||||
|
|
||||||
|
en.depinstall_missing=%1 must be installed before setup can continue. Please install %1 and run Setup again.
|
||||||
|
de.depinstall_missing=%1 muss installiert werden bevor das Setup fortfahren kann. Bitte installieren Sie %1 und starten Sie das Setup erneut.
|
||||||
|
|
||||||
|
en.depinstall_error=An error occured while installing the dependencies. Please restart the computer and run the setup again or install the following dependencies manually:%n
|
||||||
|
de.depinstall_error=Ein Fehler ist während der Installation der Abghängigkeiten aufgetreten. Bitte starten Sie den Computer neu und führen Sie das Setup erneut aus oder installieren Sie die folgenden Abhängigkeiten per Hand:%n
|
||||||
|
|
||||||
|
en.isxdl_langfile=
|
||||||
|
de.isxdl_langfile=german2.ini
|
||||||
|
|
||||||
|
|
||||||
|
[Files]
|
||||||
|
Source: "scripts\isxdl\german2.ini"; Flags: dontcopy
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
type
|
||||||
|
TProduct = record
|
||||||
|
File: String;
|
||||||
|
Title: String;
|
||||||
|
Parameters: String;
|
||||||
|
InstallClean : boolean;
|
||||||
|
MustRebootAfter : boolean;
|
||||||
|
end;
|
||||||
|
|
||||||
|
InstallResult = (InstallSuccessful, InstallRebootRequired, InstallError);
|
||||||
|
|
||||||
|
var
|
||||||
|
installMemo, downloadMemo, downloadMessage: string;
|
||||||
|
products: array of TProduct;
|
||||||
|
delayedReboot: boolean;
|
||||||
|
DependencyPage: TOutputProgressWizardPage;
|
||||||
|
|
||||||
|
|
||||||
|
procedure AddProduct(FileName, Parameters, Title, Size, URL: string; InstallClean : boolean; MustRebootAfter : boolean);
|
||||||
|
var
|
||||||
|
path: string;
|
||||||
|
i: Integer;
|
||||||
|
begin
|
||||||
|
installMemo := installMemo + '%1' + Title + #13;
|
||||||
|
|
||||||
|
path := ExpandConstant('{src}{\}') + CustomMessage('DependenciesDir') + '\' + FileName;
|
||||||
|
if not FileExists(path) then begin
|
||||||
|
path := ExpandConstant('{tmp}{\}') + FileName;
|
||||||
|
|
||||||
|
isxdl_AddFile(URL, path);
|
||||||
|
|
||||||
|
downloadMemo := downloadMemo + '%1' + Title + #13;
|
||||||
|
downloadMessage := downloadMessage + ' ' + Title + ' (' + Size + ')' + #13;
|
||||||
|
end;
|
||||||
|
|
||||||
|
i := GetArrayLength(products);
|
||||||
|
SetArrayLength(products, i + 1);
|
||||||
|
products[i].File := path;
|
||||||
|
products[i].Title := Title;
|
||||||
|
products[i].Parameters := Parameters;
|
||||||
|
products[i].InstallClean := InstallClean;
|
||||||
|
products[i].MustRebootAfter := MustRebootAfter;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function SmartExec(prod : TProduct; var ResultCode : Integer) : boolean;
|
||||||
|
begin
|
||||||
|
if (LowerCase(Copy(prod.File,Length(prod.File)-2,3)) = 'exe') then begin
|
||||||
|
Result := Exec(prod.File, prod.Parameters, '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode);
|
||||||
|
end else begin
|
||||||
|
Result := ShellExec('', prod.File, prod.Parameters, '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function PendingReboot : boolean;
|
||||||
|
var names: String;
|
||||||
|
begin
|
||||||
|
if (RegQueryMultiStringValue(HKEY_LOCAL_MACHINE, 'SYSTEM\CurrentControlSet\Control\Session Manager', 'PendingFileRenameOperations', names)) then begin
|
||||||
|
Result := true;
|
||||||
|
end else if ((RegQueryMultiStringValue(HKEY_LOCAL_MACHINE, 'SYSTEM\CurrentControlSet\Control\Session Manager', 'SetupExecute', names)) and (names <> '')) then begin
|
||||||
|
Result := true;
|
||||||
|
end else begin
|
||||||
|
Result := false;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function InstallProducts: InstallResult;
|
||||||
|
var
|
||||||
|
ResultCode, i, productCount, finishCount: Integer;
|
||||||
|
begin
|
||||||
|
Result := InstallSuccessful;
|
||||||
|
productCount := GetArrayLength(products);
|
||||||
|
|
||||||
|
if productCount > 0 then begin
|
||||||
|
DependencyPage := CreateOutputProgressPage(CustomMessage('depinstall_title'), CustomMessage('depinstall_description'));
|
||||||
|
DependencyPage.Show;
|
||||||
|
|
||||||
|
for i := 0 to productCount - 1 do begin
|
||||||
|
if (products[i].InstallClean and (delayedReboot or PendingReboot())) then begin
|
||||||
|
Result := InstallRebootRequired;
|
||||||
|
break;
|
||||||
|
end;
|
||||||
|
|
||||||
|
DependencyPage.SetText(FmtMessage(CustomMessage('depinstall_status'), [products[i].Title]), '');
|
||||||
|
DependencyPage.SetProgress(i, productCount);
|
||||||
|
|
||||||
|
if SmartExec(products[i], ResultCode) then begin
|
||||||
|
//setup executed; ResultCode contains the exit code
|
||||||
|
//MsgBox(products[i].Title + ' install executed. Result Code: ' + IntToStr(ResultCode), mbInformation, MB_OK);
|
||||||
|
if (products[i].MustRebootAfter) then begin
|
||||||
|
//delay reboot after install if we installed the last dependency anyways
|
||||||
|
if (i = productCount - 1) then begin
|
||||||
|
delayedReboot := true;
|
||||||
|
end else begin
|
||||||
|
Result := InstallRebootRequired;
|
||||||
|
end;
|
||||||
|
break;
|
||||||
|
end else if (ResultCode = 0) then begin
|
||||||
|
finishCount := finishCount + 1;
|
||||||
|
end else if (ResultCode = 3010) then begin
|
||||||
|
//ResultCode 3010: A restart is required to complete the installation. This message indicates success.
|
||||||
|
delayedReboot := true;
|
||||||
|
finishCount := finishCount + 1;
|
||||||
|
end else begin
|
||||||
|
Result := InstallError;
|
||||||
|
break;
|
||||||
|
end;
|
||||||
|
end else begin
|
||||||
|
//MsgBox(products[i].Title + ' install failed. Result Code: ' + IntToStr(ResultCode), mbInformation, MB_OK);
|
||||||
|
Result := InstallError;
|
||||||
|
break;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
//only leave not installed products for error message
|
||||||
|
for i := 0 to productCount - finishCount - 1 do begin
|
||||||
|
products[i] := products[i+finishCount];
|
||||||
|
end;
|
||||||
|
SetArrayLength(products, productCount - finishCount);
|
||||||
|
|
||||||
|
DependencyPage.Hide;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function PrepareToInstall(var NeedsRestart: boolean): String;
|
||||||
|
var
|
||||||
|
i: Integer;
|
||||||
|
s: string;
|
||||||
|
begin
|
||||||
|
delayedReboot := false;
|
||||||
|
|
||||||
|
case InstallProducts() of
|
||||||
|
InstallError: begin
|
||||||
|
s := CustomMessage('depinstall_error');
|
||||||
|
|
||||||
|
for i := 0 to GetArrayLength(products) - 1 do begin
|
||||||
|
s := s + #13 + ' ' + products[i].Title;
|
||||||
|
end;
|
||||||
|
|
||||||
|
Result := s;
|
||||||
|
end;
|
||||||
|
InstallRebootRequired: begin
|
||||||
|
Result := products[0].Title;
|
||||||
|
NeedsRestart := true;
|
||||||
|
|
||||||
|
//write into the registry that the installer needs to be executed again after restart
|
||||||
|
RegWriteStringValue(HKEY_CURRENT_USER, 'SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce', 'InstallBootstrap', ExpandConstant('{srcexe}'));
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function NeedRestart : boolean;
|
||||||
|
begin
|
||||||
|
if (delayedReboot) then
|
||||||
|
Result := true;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function UpdateReadyMemo(Space, NewLine, MemoUserInfoInfo, MemoDirInfo, MemoTypeInfo, MemoComponentsInfo, MemoGroupInfo, MemoTasksInfo: String): String;
|
||||||
|
var
|
||||||
|
s: string;
|
||||||
|
begin
|
||||||
|
if downloadMemo <> '' then
|
||||||
|
s := s + CustomMessage('depdownload_memo_title') + ':' + NewLine + FmtMessage(downloadMemo, [Space]) + NewLine;
|
||||||
|
if installMemo <> '' then
|
||||||
|
s := s + CustomMessage('depinstall_memo_title') + ':' + NewLine + FmtMessage(installMemo, [Space]) + NewLine;
|
||||||
|
|
||||||
|
s := s + MemoDirInfo + NewLine + NewLine + MemoGroupInfo
|
||||||
|
|
||||||
|
if MemoTasksInfo <> '' then
|
||||||
|
s := s + NewLine + NewLine + MemoTasksInfo;
|
||||||
|
|
||||||
|
Result := s
|
||||||
|
end;
|
||||||
|
|
||||||
|
function NextButtonClick(CurPageID: Integer): boolean;
|
||||||
|
begin
|
||||||
|
Result := true;
|
||||||
|
|
||||||
|
if CurPageID = wpReady then begin
|
||||||
|
if downloadMemo <> '' then begin
|
||||||
|
//change isxdl language only if it is not english because isxdl default language is already english
|
||||||
|
if (ActiveLanguage() <> 'en') then begin
|
||||||
|
ExtractTemporaryFile(CustomMessage('isxdl_langfile'));
|
||||||
|
isxdl_SetOption('language', ExpandConstant('{tmp}{\}') + CustomMessage('isxdl_langfile'));
|
||||||
|
end;
|
||||||
|
//isxdl_SetOption('title', FmtMessage(SetupMessage(msgSetupWindowTitle), [CustomMessage('appname')]));
|
||||||
|
|
||||||
|
if SuppressibleMsgBox(FmtMessage(CustomMessage('depdownload_msg'), [downloadMessage]), mbConfirmation, MB_YESNO, IDYES) = IDNO then
|
||||||
|
Result := false
|
||||||
|
else if isxdl_DownloadFiles(StrToInt(ExpandConstant('{wizardhwnd}'))) = 0 then
|
||||||
|
Result := false;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function IsX86: boolean;
|
||||||
|
begin
|
||||||
|
Result := (ProcessorArchitecture = paX86) or (ProcessorArchitecture = paUnknown);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function IsX64: boolean;
|
||||||
|
begin
|
||||||
|
Result := Is64BitInstallMode and (ProcessorArchitecture = paX64);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function IsIA64: boolean;
|
||||||
|
begin
|
||||||
|
Result := Is64BitInstallMode and (ProcessorArchitecture = paIA64);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function GetString(x86, x64, ia64: String): String;
|
||||||
|
begin
|
||||||
|
if IsX64() and (x64 <> '') then begin
|
||||||
|
Result := x64;
|
||||||
|
end else if IsIA64() and (ia64 <> '') then begin
|
||||||
|
Result := ia64;
|
||||||
|
end else begin
|
||||||
|
Result := x86;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function GetArchitectureString(): String;
|
||||||
|
begin
|
||||||
|
if IsX64() then begin
|
||||||
|
Result := '_x64';
|
||||||
|
end else if IsIA64() then begin
|
||||||
|
Result := '_ia64';
|
||||||
|
end else begin
|
||||||
|
Result := '';
|
||||||
|
end;
|
||||||
|
end;
|
25
InnoSetup/Scripts/products/dotnetfx11.iss
Normal file
25
InnoSetup/Scripts/products/dotnetfx11.iss
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
// requires Windows 2000; Windows Server 2003 Service Pack 1 for Itanium-based Systems; Windows Server 2003 x64 editions; Windows Server 2008 Datacenter; Windows Server 2008 Enterprise; Windows Server 2008 for Itanium-based Systems; Windows Server 2008 Standard; Windows Vista Business; Windows Vista Enterprise; Windows Vista Home Basic; Windows Vista Home Premium; Windows Vista Starter; Windows Vista Ultimate; Windows XP; Windows XP Professional x64 Edition; Windows NT 4.0 Service Pack 6a
|
||||||
|
// requires internet explorer 5.0.1 or higher
|
||||||
|
// http://www.microsoft.com/downloads/details.aspx?FamilyID=262d25e3-f589-4842-8157-034d1e7cf3a3
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
dotnetfx11_title=.NET Framework 1.1
|
||||||
|
|
||||||
|
en.dotnetfx11_size=23.1 MB
|
||||||
|
de.dotnetfx11_size=23,1 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
dotnetfx11_url = 'http://download.microsoft.com/download/a/a/c/aac39226-8825-44ce-90e3-bf8203e74006/dotnetfx.exe';
|
||||||
|
|
||||||
|
procedure dotnetfx11();
|
||||||
|
begin
|
||||||
|
if (IsX86() and not netfxinstalled(NetFx11, '')) then
|
||||||
|
AddProduct('dotnetfx11.exe',
|
||||||
|
'/q:a /c:"install /qb /l"',
|
||||||
|
CustomMessage('dotnetfx11_title'),
|
||||||
|
CustomMessage('dotnetfx11_size'),
|
||||||
|
dotnetfx11_url,
|
||||||
|
false, false);
|
||||||
|
end;
|
24
InnoSetup/Scripts/products/dotnetfx11lp.iss
Normal file
24
InnoSetup/Scripts/products/dotnetfx11lp.iss
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
[CustomMessages]
|
||||||
|
de.dotnetfx11lp_title=.NET Framework 1.1 Sprachpaket: Deutsch
|
||||||
|
|
||||||
|
de.dotnetfx11lp_size=1,4 MB
|
||||||
|
|
||||||
|
;http://www.microsoft.com/globaldev/reference/lcid-all.mspx
|
||||||
|
de.dotnetfx11lp_lcid=1031
|
||||||
|
|
||||||
|
de.dotnetfx11lp_url=http://download.microsoft.com/download/6/8/2/6821e687-526a-4ef8-9a67-9a402ec5ac9e/langpack.exe
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
procedure dotnetfx11lp();
|
||||||
|
begin
|
||||||
|
if (ActiveLanguage() <> 'en') then begin
|
||||||
|
if (IsX86() and not netfxinstalled(NetFx11, CustomMessage('dotnetfx11lp_lcid'))) then
|
||||||
|
AddProduct('dotnetfx11' + ActiveLanguage() + '.exe',
|
||||||
|
'/q:a /c:"inst.exe /qb /l"',
|
||||||
|
CustomMessage('dotnetfx11lp_title'),
|
||||||
|
CustomMessage('dotnetfx11lp_size'),
|
||||||
|
CustomMessage('dotnetfx11lp_url'),
|
||||||
|
false, false);
|
||||||
|
end;
|
||||||
|
end;
|
25
InnoSetup/Scripts/products/dotnetfx11sp1.iss
Normal file
25
InnoSetup/Scripts/products/dotnetfx11sp1.iss
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
// requires TabletPC, Windows 2000, Windows 2000 Advanced Server, Windows 2000 Professional Edition , Windows 2000 Server, Windows 2000 Service Pack 2, Windows 2000 Service Pack 3, Windows 2000 Service Pack 4, Windows Server 2003 Service Pack 1 for Itanium-based Systems, Windows Server 2003 x64 editions, Windows Server 2003, Datacenter Edition for 64-Bit Itanium-Based Systems, Windows Server 2003, Datacenter x64 Edition, Windows Server 2003, Enterprise Edition for Itanium-based Systems, Windows Server 2003, Enterprise x64 Edition, Windows Server 2003, Standard x64 Edition, Windows Server 2008 Datacenter, Windows Server 2008 Enterprise, Windows Server 2008 for Itanium-based Systems, Windows Server 2008 Standard, Windows Vista Business, Windows Vista Business 64-bit edition, Windows Vista Enterprise, Windows Vista Enterprise 64-bit edition, Windows Vista Home Basic, Windows Vista Home Basic 64-bit edition, Windows Vista Home Premium, Windows Vista Home Premium 64-bit edition, Windows Vista Starter, Windows Vista Ultimate, Windows Vista Ultimate 64-bit edition, Windows XP, Windows XP Home Edition , Windows XP Media Center Edition, Windows XP Professional Edition , Windows XP Professional x64 Edition , Windows XP Service Pack 1, Windows XP Service Pack 2
|
||||||
|
// requires internet explorer 5.0.1 or higher
|
||||||
|
// http://www.microsoft.com/downloads/details.aspx?familyid=A8F5654F-088E-40B2-BBDB-A83353618B38
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
dotnetfx11sp1_title=.NET Framework 1.1 Service Pack 1
|
||||||
|
|
||||||
|
en.dotnetfx11sp1_size=10.5 MB
|
||||||
|
de.dotnetfx11sp1_size=10,5 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
dotnetfx11sp1_url = 'http://download.microsoft.com/download/8/b/4/8b4addd8-e957-4dea-bdb8-c4e00af5b94b/NDP1.1sp1-KB867460-X86.exe';
|
||||||
|
|
||||||
|
procedure dotnetfx11sp1();
|
||||||
|
begin
|
||||||
|
if (IsX86() and (netfxspversion(NetFx11, '') < 1)) then
|
||||||
|
AddProduct('dotnetfx11sp1.exe',
|
||||||
|
'/q',
|
||||||
|
CustomMessage('dotnetfx11sp1_title'),
|
||||||
|
CustomMessage('dotnetfx11sp1_size'),
|
||||||
|
dotnetfx11sp1_url,
|
||||||
|
false, false);
|
||||||
|
end;
|
28
InnoSetup/Scripts/products/dotnetfx20.iss
Normal file
28
InnoSetup/Scripts/products/dotnetfx20.iss
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
// requires Windows 2000 Service Pack 3, Windows 98, Windows 98 Second Edition, Windows ME, Windows Server 2003, Windows XP Service Pack 2
|
||||||
|
// requires internet explorer 5.0.1 or higher
|
||||||
|
// requires windows installer 2.0 on windows 98, ME
|
||||||
|
// requires Windows Installer 3.1 on windows 2000 or higher
|
||||||
|
// http://www.microsoft.com/downloads/details.aspx?FamilyID=0856eacb-4362-4b0d-8edd-aab15c5e04f5
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
dotnetfx20_title=.NET Framework 2.0
|
||||||
|
|
||||||
|
dotnetfx20_size=23 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
dotnetfx20_url = 'http://download.microsoft.com/download/5/6/7/567758a3-759e-473e-bf8f-52154438565a/dotnetfx.exe';
|
||||||
|
dotnetfx20_url_x64 = 'http://download.microsoft.com/download/a/3/f/a3f1bf98-18f3-4036-9b68-8e6de530ce0a/NetFx64.exe';
|
||||||
|
dotnetfx20_url_ia64 = 'http://download.microsoft.com/download/f/8/6/f86148a4-e8f7-4d08-a484-b4107f238728/NetFx64.exe';
|
||||||
|
|
||||||
|
procedure dotnetfx20();
|
||||||
|
begin
|
||||||
|
if (not netfxinstalled(NetFx20, '')) then
|
||||||
|
AddProduct('dotnetfx20' + GetArchitectureString() + '.exe',
|
||||||
|
'/passive /norestart /lang:ENU',
|
||||||
|
CustomMessage('dotnetfx20_title'),
|
||||||
|
CustomMessage('dotnetfx20_size'),
|
||||||
|
GetString(dotnetfx20_url, dotnetfx20_url_x64, dotnetfx20_url_ia64),
|
||||||
|
false, false);
|
||||||
|
end;
|
28
InnoSetup/Scripts/products/dotnetfx20lp.iss
Normal file
28
InnoSetup/Scripts/products/dotnetfx20lp.iss
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
//http://www.microsoft.com/downloads/details.aspx?familyid=92E0E1CE-8693-4480-84FA-7D85EEF59016
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
de.dotnetfx20lp_title=.NET Framework 2.0 Sprachpaket: Deutsch
|
||||||
|
|
||||||
|
de.dotnetfx20lp_size=1,8 MB
|
||||||
|
|
||||||
|
;http://www.microsoft.com/globaldev/reference/lcid-all.mspx
|
||||||
|
de.dotnetfx20lp_lcid=1031
|
||||||
|
|
||||||
|
de.dotnetfx20lp_url=http://download.microsoft.com/download/2/9/7/29768238-56c3-4ea6-abba-4c5246f2bc81/langpack.exe
|
||||||
|
de.dotnetfx20lp_url_x64=http://download.microsoft.com/download/2/e/f/2ef250ba-a868-4074-a4c9-249004866f87/langpack.exe
|
||||||
|
de.dotnetfx20lp_url_ia64=http://download.microsoft.com/download/8/9/8/898c5670-5e74-41c4-82fc-68dd837af627/langpack.exe
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
procedure dotnetfx20lp();
|
||||||
|
begin
|
||||||
|
if (ActiveLanguage() <> 'en') then begin
|
||||||
|
if (not netfxinstalled(NetFx20, CustomMessage('dotnetfx20lp_lcid'))) then
|
||||||
|
AddProduct('dotnetfx20' + GetArchitectureString() + '_' + ActiveLanguage() + '.exe',
|
||||||
|
'/passive /norestart /lang:ENU',
|
||||||
|
CustomMessage('dotnetfx20lp_title'),
|
||||||
|
CustomMessage('dotnetfx20lp_size'),
|
||||||
|
CustomMessage('dotnetfx20lp_url' + GetArchitectureString()),
|
||||||
|
false, false);
|
||||||
|
end;
|
||||||
|
end;
|
27
InnoSetup/Scripts/products/dotnetfx20sp1.iss
Normal file
27
InnoSetup/Scripts/products/dotnetfx20sp1.iss
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
// requires Windows 2000 Service Pack 4, Windows Server 2003, Windows XP Service Pack 2
|
||||||
|
// requires KB 835732 on Windows 2000 Service Pack 4
|
||||||
|
// http://www.microsoft.com/downloads/details.aspx?FamilyID=79bc3b77-e02c-4ad3-aacf-a7633f706ba5
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
dotnetfx20sp1_title=.NET Framework 2.0 Service Pack 1
|
||||||
|
|
||||||
|
en.dotnetfx20sp1_size=23.6 MB
|
||||||
|
de.dotnetfx20sp1_size=23,6 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
dotnetfx20sp1_url = 'http://download.microsoft.com/download/0/8/c/08c19fa4-4c4f-4ffb-9d6c-150906578c9e/NetFx20SP1_x86.exe';
|
||||||
|
dotnetfx20sp1_url_x64 = 'http://download.microsoft.com/download/9/8/6/98610406-c2b7-45a4-bdc3-9db1b1c5f7e2/NetFx20SP1_x64.exe';
|
||||||
|
dotnetfx20sp1_url_ia64 = 'http://download.microsoft.com/download/c/9/7/c97d534b-8a55-495d-ab06-ad56f4b7f155/NetFx20SP1_ia64.exe';
|
||||||
|
|
||||||
|
procedure dotnetfx20sp1();
|
||||||
|
begin
|
||||||
|
if (netfxspversion(NetFx20, '') < 1) then
|
||||||
|
AddProduct('dotnetfx20sp1' + GetArchitectureString() + '.exe',
|
||||||
|
'/passive /norestart /lang:ENU',
|
||||||
|
CustomMessage('dotnetfx20sp1_title'),
|
||||||
|
CustomMessage('dotnetfx20sp1_size'),
|
||||||
|
GetString(dotnetfx20sp1_url, dotnetfx20sp1_url_x64, dotnetfx20sp1_url_ia64),
|
||||||
|
false, false);
|
||||||
|
end;
|
28
InnoSetup/Scripts/products/dotnetfx20sp1lp.iss
Normal file
28
InnoSetup/Scripts/products/dotnetfx20sp1lp.iss
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
//http://www.microsoft.com/downloads/details.aspx?FamilyID=1cc39ffe-a2aa-4548-91b3-855a2de99304
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
de.dotnetfx20sp1lp_title=.NET Framework 2.0 SP1 Sprachpaket: Deutsch
|
||||||
|
|
||||||
|
de.dotnetfx20sp1lp_size=3,4 MB
|
||||||
|
|
||||||
|
;http://www.microsoft.com/globaldev/reference/lcid-all.mspx
|
||||||
|
de.dotnetfx20sp1lp_lcid=1031
|
||||||
|
|
||||||
|
de.dotnetfx20sp1lp_url=http://download.microsoft.com/download/8/a/a/8aab7e6a-5e58-4e83-be99-f5fb49fe811e/NetFx20SP1_x86de.exe
|
||||||
|
de.dotnetfx20sp1lp_url_x64=http://download.microsoft.com/download/1/4/2/1425872f-c564-4ab2-8c9e-344afdaecd44/NetFx20SP1_x64de.exe
|
||||||
|
de.dotnetfx20sp1lp_url_ia64=http://download.microsoft.com/download/a/0/b/a0bef431-19d8-433c-9f42-6e2824a8cb90/NetFx20SP1_ia64de.exe
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
procedure dotnetfx20sp1lp();
|
||||||
|
begin
|
||||||
|
if (ActiveLanguage() <> 'en') then begin
|
||||||
|
if (netfxspversion(NetFx20, CustomMessage('dotnetfx20sp1lp_lcid')) < 1) then
|
||||||
|
AddProduct('dotnetfx20sp1' + GetArchitectureString() + '_' + ActiveLanguage() + '.exe',
|
||||||
|
'/passive /norestart /lang:ENU',
|
||||||
|
CustomMessage('dotnetfx20sp1lp_title'),
|
||||||
|
CustomMessage('dotnetfx20sp1lp_size'),
|
||||||
|
CustomMessage('dotnetfx20sp1lp_url' + GetArchitectureString()),
|
||||||
|
false, false);
|
||||||
|
end;
|
||||||
|
end;
|
25
InnoSetup/Scripts/products/dotnetfx20sp2.iss
Normal file
25
InnoSetup/Scripts/products/dotnetfx20sp2.iss
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
//http://www.microsoft.com/downloads/details.aspx?familyid=5B2C0358-915B-4EB5-9B1D-10E506DA9D0F
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
dotnetfx20sp2_title=.NET Framework 2.0 Service Pack 2
|
||||||
|
|
||||||
|
en.dotnetfx20sp2_size=24 MB - 52 MB
|
||||||
|
de.dotnetfx20sp2_size=24 MB - 52 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
dotnetfx20sp2_url = 'http://download.microsoft.com/download/c/6/e/c6e88215-0178-4c6c-b5f3-158ff77b1f38/NetFx20SP2_x86.exe';
|
||||||
|
dotnetfx20sp2_url_x64 = 'http://download.microsoft.com/download/c/6/e/c6e88215-0178-4c6c-b5f3-158ff77b1f38/NetFx20SP2_x64.exe';
|
||||||
|
dotnetfx20sp2_url_ia64 = 'http://download.microsoft.com/download/c/6/e/c6e88215-0178-4c6c-b5f3-158ff77b1f38/NetFx20SP2_ia64.exe';
|
||||||
|
|
||||||
|
procedure dotnetfx20sp2();
|
||||||
|
begin
|
||||||
|
if (netfxspversion(NetFx20, '') < 2) then
|
||||||
|
AddProduct('dotnetfx20sp2' + GetArchitectureString() + '.exe',
|
||||||
|
'/passive /norestart /lang:ENU',
|
||||||
|
CustomMessage('dotnetfx20sp2_title'),
|
||||||
|
CustomMessage('dotnetfx20sp2_size'),
|
||||||
|
GetString(dotnetfx20sp2_url, dotnetfx20sp2_url_x64, dotnetfx20sp2_url_ia64),
|
||||||
|
false, false);
|
||||||
|
end;
|
28
InnoSetup/Scripts/products/dotnetfx20sp2lp.iss
Normal file
28
InnoSetup/Scripts/products/dotnetfx20sp2lp.iss
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
//http://www.microsoft.com/downloads/details.aspx?FamilyID=c69789e0-a4fa-4b2e-a6b5-3b3695825992
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
de.dotnetfx20sp2lp_title=.NET Framework 2.0 SP2 Sprachpaket: Deutsch
|
||||||
|
|
||||||
|
de.dotnetfx20sp2lp_size=3,4 MB
|
||||||
|
|
||||||
|
;http://www.microsoft.com/globaldev/reference/lcid-all.mspx
|
||||||
|
de.dotnetfx20sp2lp_lcid=1031
|
||||||
|
|
||||||
|
de.dotnetfx20sp2lp_url=http://download.microsoft.com/download/0/b/1/0b175c8e-34bd-46c0-bfcd-af8d33770c58/netfx20sp2_x86de.exe
|
||||||
|
de.dotnetfx20sp2lp_url_x64=http://download.microsoft.com/download/4/e/c/4ec67a11-879d-4550-9c25-fd9ab4261b46/netfx20sp2_x64de.exe
|
||||||
|
de.dotnetfx20sp2lp_url_ia64=http://download.microsoft.com/download/a/3/3/a3349a2d-36e4-4797-8297-4394e6fbd677/NetFx20SP2_ia64de.exe
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
procedure dotnetfx20sp2lp();
|
||||||
|
begin
|
||||||
|
if (ActiveLanguage() <> 'en') then begin
|
||||||
|
if (netfxspversion(NetFx20, CustomMessage('dotnetfx20sp2lp_lcid')) < 2) then
|
||||||
|
AddProduct('dotnetfx20sp2' + GetArchitectureString() + '_' + ActiveLanguage() + '.exe',
|
||||||
|
'/lang:enu /passive /norestart"',
|
||||||
|
CustomMessage('dotnetfx20sp2lp_title'),
|
||||||
|
CustomMessage('dotnetfx20sp2lp_size'),
|
||||||
|
CustomMessage('dotnetfx20sp2lp_url' + GetArchitectureString()),
|
||||||
|
false, false);
|
||||||
|
end;
|
||||||
|
end;
|
25
InnoSetup/Scripts/products/dotnetfx35.iss
Normal file
25
InnoSetup/Scripts/products/dotnetfx35.iss
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
// requires Windows Server 2003 Service Pack 1, Windows Server 2008, Windows Vista, Windows XP Service Pack 2
|
||||||
|
// requires Windows Installer 3.1
|
||||||
|
// WARNING: express setup (downloads and installs the components depending on your OS) if you want to deploy it on cd or network download the full bootsrapper on website below
|
||||||
|
// http://www.microsoft.com/downloads/details.aspx?FamilyId=333325FD-AE52-4E35-B531-508D977D32A6
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
dotnetfx35_title=.NET Framework 3.5
|
||||||
|
|
||||||
|
dotnetfx35_size=3 MB - 197 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
dotnetfx35_url = 'http://download.microsoft.com/download/7/0/3/703455ee-a747-4cc8-bd3e-98a615c3aedb/dotNetFx35setup.exe';
|
||||||
|
|
||||||
|
procedure dotnetfx35();
|
||||||
|
begin
|
||||||
|
if (netfxinstalled(NetFx35, '') = false) then
|
||||||
|
AddProduct('dotnetfx35' + GetArchitectureString() + '.exe',
|
||||||
|
'/lang:enu /passive /norestart',
|
||||||
|
CustomMessage('dotnetfx35_title'),
|
||||||
|
CustomMessage('dotnetfx35_size'),
|
||||||
|
dotnetfx35_url,
|
||||||
|
false, false);
|
||||||
|
end;
|
24
InnoSetup/Scripts/products/dotnetfx35lp.iss
Normal file
24
InnoSetup/Scripts/products/dotnetfx35lp.iss
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
[CustomMessages]
|
||||||
|
de.dotnetfx35lp_title=.NET Framework 3.5 Sprachpaket: Deutsch
|
||||||
|
|
||||||
|
de.dotnetfx35lp_size=13 MB - 51 MB
|
||||||
|
|
||||||
|
;http://www.microsoft.com/globaldev/reference/lcid-all.mspx
|
||||||
|
de.dotnetfx35lp_lcid=1031
|
||||||
|
|
||||||
|
de.dotnetfx35lp_url=http://download.microsoft.com/download/d/1/e/d1e617c3-c7f4-467e-a7de-af832450efd3/dotnetfx35langpack_x86de.exe
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
procedure dotnetfx35lp();
|
||||||
|
begin
|
||||||
|
if (ActiveLanguage() <> 'en') then begin
|
||||||
|
if (not netfxinstalled(NetFx35, CustomMessage('dotnetfx35lp_lcid'))) then
|
||||||
|
AddProduct('dotnetfx35' + GetArchitectureString() + '_' + ActiveLanguage() + '.exe',
|
||||||
|
'/lang:enu /passive /norestart',
|
||||||
|
CustomMessage('dotnetfx35lp_title'),
|
||||||
|
CustomMessage('dotnetfx35lp_size'),
|
||||||
|
CustomMessage('dotnetfx35lp_url'),
|
||||||
|
false, false);
|
||||||
|
end;
|
||||||
|
end;
|
26
InnoSetup/Scripts/products/dotnetfx35sp1.iss
Normal file
26
InnoSetup/Scripts/products/dotnetfx35sp1.iss
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
// requires Windows Server 2003 Service Pack 1, Windows Server 2008, Windows Vista, Windows XP Service Pack 2
|
||||||
|
// requires Windows Installer 3.1
|
||||||
|
// WARNING: express setup (downloads and installs the components depending on your OS) if you want to deploy it on cd or network download the full bootsrapper on website below
|
||||||
|
// http://www.microsoft.com/downloads/details.aspx?FamilyID=ab99342f-5d1a-413d-8319-81da479ab0d7
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
dotnetfx35sp1_title=.NET Framework 3.5 Service Pack 1
|
||||||
|
|
||||||
|
en.dotnetfx35sp1_size=3 MB - 232 MB
|
||||||
|
de.dotnetfx35sp1_size=3 MB - 232 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
dotnetfx35sp1_url = 'http://download.microsoft.com/download/0/6/1/061f001c-8752-4600-a198-53214c69b51f/dotnetfx35setup.exe';
|
||||||
|
|
||||||
|
procedure dotnetfx35sp1();
|
||||||
|
begin
|
||||||
|
if (netfxspversion(NetFx35, '') < 1) then
|
||||||
|
AddProduct('dotnetfx35sp1' + GetArchitectureString() + '.exe',
|
||||||
|
'/lang:enu /passive /norestart',
|
||||||
|
CustomMessage('dotnetfx35sp1_title'),
|
||||||
|
CustomMessage('dotnetfx35sp1_size'),
|
||||||
|
dotnetfx35sp1_url,
|
||||||
|
false, false);
|
||||||
|
end;
|
24
InnoSetup/Scripts/products/dotnetfx35sp1lp.iss
Normal file
24
InnoSetup/Scripts/products/dotnetfx35sp1lp.iss
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
[CustomMessages]
|
||||||
|
de.dotnetfx35sp1lp_title=.NET Framework 3.5 SP1 Sprachpaket: Deutsch
|
||||||
|
|
||||||
|
de.dotnetfx35sp1lp_size=22 MB - 98 MB
|
||||||
|
|
||||||
|
;http://www.microsoft.com/globaldev/reference/lcid-all.mspx
|
||||||
|
de.dotnetfx35sp1lp_lcid=1031
|
||||||
|
|
||||||
|
de.dotnetfx35sp1lp_url=http://download.microsoft.com/download/d/7/2/d728b7b9-454b-4b57-8270-45dac441b0ec/dotnetfx35langpack_x86de.exe
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
procedure dotnetfx35sp1lp();
|
||||||
|
begin
|
||||||
|
if (ActiveLanguage() <> 'en') then begin
|
||||||
|
if (netfxspversion(NetFx35, CustomMessage('dotnetfx35sp1lp_lcid')) < 1) then
|
||||||
|
AddProduct('dotnetfx35sp1' + GetArchitectureString() + '_' + ActiveLanguage() + '.exe',
|
||||||
|
'/lang:enu /passive /norestart',
|
||||||
|
CustomMessage('dotnetfx35sp1lp_title'),
|
||||||
|
CustomMessage('dotnetfx35sp1lp_size'),
|
||||||
|
CustomMessage('dotnetfx35sp1lp_url'),
|
||||||
|
false, false);
|
||||||
|
end;
|
||||||
|
end;
|
30
InnoSetup/Scripts/products/dotnetfx40client.iss
Normal file
30
InnoSetup/Scripts/products/dotnetfx40client.iss
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
// requires Windows 7, Windows 7 Service Pack 1, Windows Server 2003 Service Pack 2, Windows Server 2008, Windows Server 2008 R2, Windows Server 2008 R2 SP1, Windows Vista Service Pack 1, Windows XP Service Pack 3
|
||||||
|
// requires Windows Installer 3.1
|
||||||
|
// requires Internet Explorer 5.01
|
||||||
|
// WARNING: express setup (downloads and installs the components depending on your OS) if you want to deploy it on cd or network download the full bootsrapper on website below
|
||||||
|
// http://www.microsoft.com/downloads/en/details.aspx?FamilyID=5765d7a8-7722-4888-a970-ac39b33fd8ab
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
dotnetfx40client_title=.NET Framework 4.0 Client
|
||||||
|
|
||||||
|
dotnetfx40client_size=3 MB - 197 MB
|
||||||
|
|
||||||
|
;http://www.microsoft.com/globaldev/reference/lcid-all.mspx
|
||||||
|
en.dotnetfx40client_lcid=''
|
||||||
|
de.dotnetfx40client_lcid='/lcid 1031 '
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
dotnetfx40client_url = 'http://download.microsoft.com/download/7/B/6/7B629E05-399A-4A92-B5BC-484C74B5124B/dotNetFx40_Client_setup.exe';
|
||||||
|
|
||||||
|
procedure dotnetfx40client();
|
||||||
|
begin
|
||||||
|
if (not netfxinstalled(NetFx40Client, '')) then
|
||||||
|
AddProduct('dotNetFx40_Client_setup.exe',
|
||||||
|
CustomMessage('dotnetfx40client_lcid') + '/passive /norestart',
|
||||||
|
CustomMessage('dotnetfx40client_title'),
|
||||||
|
CustomMessage('dotnetfx40client_size'),
|
||||||
|
dotnetfx40client_url,
|
||||||
|
false, false);
|
||||||
|
end;
|
30
InnoSetup/Scripts/products/dotnetfx40full.iss
Normal file
30
InnoSetup/Scripts/products/dotnetfx40full.iss
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
// requires Windows 7, Windows 7 Service Pack 1, Windows Server 2003 Service Pack 2, Windows Server 2008, Windows Server 2008 R2, Windows Server 2008 R2 SP1, Windows Vista Service Pack 1, Windows XP Service Pack 3
|
||||||
|
// requires Windows Installer 3.1
|
||||||
|
// requires Internet Explorer 5.01
|
||||||
|
// WARNING: express setup (downloads and installs the components depending on your OS) if you want to deploy it on cd or network download the full bootsrapper on website below
|
||||||
|
// http://www.microsoft.com/downloads/en/details.aspx?FamilyID=9cfb2d51-5ff4-4491-b0e5-b386f32c0992
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
dotnetfx40full_title=.NET Framework 4.0 Full
|
||||||
|
|
||||||
|
dotnetfx40full_size=3 MB - 197 MB
|
||||||
|
|
||||||
|
;http://www.microsoft.com/globaldev/reference/lcid-all.mspx
|
||||||
|
en.dotnetfx40full_lcid=''
|
||||||
|
de.dotnetfx40full_lcid='/lcid 1031 '
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
dotnetfx40full_url = 'http://download.microsoft.com/download/1/B/E/1BE39E79-7E39-46A3-96FF-047F95396215/dotNetFx40_Full_setup.exe';
|
||||||
|
|
||||||
|
procedure dotnetfx40full();
|
||||||
|
begin
|
||||||
|
if (not netfxinstalled(NetFx40Full, '')) then
|
||||||
|
AddProduct('dotNetFx40_Full_setup.exe',
|
||||||
|
CustomMessage('dotnetfx40full_lcid') + '/q /passive /norestart',
|
||||||
|
CustomMessage('dotnetfx40full_title'),
|
||||||
|
CustomMessage('dotnetfx40full_size'),
|
||||||
|
dotnetfx40full_url,
|
||||||
|
false, false);
|
||||||
|
end;
|
69
InnoSetup/Scripts/products/dotnetfxversion.iss
Normal file
69
InnoSetup/Scripts/products/dotnetfxversion.iss
Normal file
|
@ -0,0 +1,69 @@
|
||||||
|
[Code]
|
||||||
|
type
|
||||||
|
NetFXType = (NetFx10, NetFx11, NetFx20, NetFx30, NetFx35, NetFx40Client, NetFx40Full);
|
||||||
|
|
||||||
|
const
|
||||||
|
netfx11plus_reg = 'Software\Microsoft\NET Framework Setup\NDP\';
|
||||||
|
|
||||||
|
function netfxinstalled(version: NetFXType; lcid: string): boolean;
|
||||||
|
var
|
||||||
|
regVersion: cardinal;
|
||||||
|
regVersionString: string;
|
||||||
|
begin
|
||||||
|
if (lcid <> '') then
|
||||||
|
lcid := '\' + lcid;
|
||||||
|
|
||||||
|
if (version = NetFx10) then begin
|
||||||
|
RegQueryStringValue(HKLM, 'Software\Microsoft\.NETFramework\Policy\v1.0\3705', 'Install', regVersionString);
|
||||||
|
Result := regVersionString <> '';
|
||||||
|
end else begin
|
||||||
|
case version of
|
||||||
|
NetFx11:
|
||||||
|
RegQueryDWordValue(HKLM, netfx11plus_reg + 'v1.1.4322' + lcid, 'Install', regVersion);
|
||||||
|
NetFx20:
|
||||||
|
RegQueryDWordValue(HKLM, netfx11plus_reg + 'v2.0.50727' + lcid, 'Install', regVersion);
|
||||||
|
NetFx30:
|
||||||
|
RegQueryDWordValue(HKLM, netfx11plus_reg + 'v3.0\Setup' + lcid, 'InstallSuccess', regVersion);
|
||||||
|
NetFx35:
|
||||||
|
RegQueryDWordValue(HKLM, netfx11plus_reg + 'v3.5' + lcid, 'Install', regVersion);
|
||||||
|
NetFx40Client:
|
||||||
|
RegQueryDWordValue(HKLM, netfx11plus_reg + 'v4\Client' + lcid, 'Install', regVersion);
|
||||||
|
NetFx40Full:
|
||||||
|
RegQueryDWordValue(HKLM, netfx11plus_reg + 'v4\Full' + lcid, 'Install', regVersion);
|
||||||
|
end;
|
||||||
|
Result := (regVersion <> 0);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function netfxspversion(version: NetFXType; lcid: string): integer;
|
||||||
|
var
|
||||||
|
regVersion: cardinal;
|
||||||
|
begin
|
||||||
|
if (lcid <> '') then
|
||||||
|
lcid := '\' + lcid;
|
||||||
|
|
||||||
|
case version of
|
||||||
|
NetFx10:
|
||||||
|
//not supported
|
||||||
|
regVersion := -1;
|
||||||
|
NetFx11:
|
||||||
|
if (not RegQueryDWordValue(HKLM, netfx11plus_reg + 'v1.1.4322' + lcid, 'SP', regVersion)) then
|
||||||
|
regVersion := -1;
|
||||||
|
NetFx20:
|
||||||
|
if (not RegQueryDWordValue(HKLM, netfx11plus_reg + 'v2.0.50727' + lcid, 'SP', regVersion)) then
|
||||||
|
regVersion := -1;
|
||||||
|
NetFx30:
|
||||||
|
if (not RegQueryDWordValue(HKLM, netfx11plus_reg + 'v3.0' + lcid, 'SP', regVersion)) then
|
||||||
|
regVersion := -1;
|
||||||
|
NetFx35:
|
||||||
|
if (not RegQueryDWordValue(HKLM, netfx11plus_reg + 'v3.5' + lcid, 'SP', regVersion)) then
|
||||||
|
regVersion := -1;
|
||||||
|
NetFx40Client:
|
||||||
|
if (not RegQueryDWordValue(HKLM, netfx11plus_reg + 'v4\Client' + lcid, 'Servicing', regVersion)) then
|
||||||
|
regVersion := -1;
|
||||||
|
NetFx40Full:
|
||||||
|
if (not RegQueryDWordValue(HKLM, netfx11plus_reg + 'v4\Full' + lcid, 'Servicing', regVersion)) then
|
||||||
|
regVersion := -1;
|
||||||
|
end;
|
||||||
|
Result := regVersion;
|
||||||
|
end;
|
23
InnoSetup/Scripts/products/fileversion.iss
Normal file
23
InnoSetup/Scripts/products/fileversion.iss
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
[Code]
|
||||||
|
function GetFullVersion(VersionMS, VersionLS: cardinal): string;
|
||||||
|
var
|
||||||
|
version: string;
|
||||||
|
begin
|
||||||
|
version := IntToStr(word(VersionMS shr 16));
|
||||||
|
version := version + '.' + IntToStr(word(VersionMS and not $ffff0000));
|
||||||
|
|
||||||
|
version := version + '.' + IntToStr(word(VersionLS shr 16));
|
||||||
|
version := version + '.' + IntToStr(word(VersionLS and not $ffff0000));
|
||||||
|
|
||||||
|
Result := version;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function fileversion(file: string): string;
|
||||||
|
var
|
||||||
|
versionMS, versionLS: cardinal;
|
||||||
|
begin
|
||||||
|
if GetVersionNumbers(file, versionMS, versionLS) then
|
||||||
|
Result := GetFullVersion(versionMS, versionLS)
|
||||||
|
else
|
||||||
|
Result := '0';
|
||||||
|
end;
|
28
InnoSetup/Scripts/products/ie6.iss
Normal file
28
InnoSetup/Scripts/products/ie6.iss
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
// requires Windows 2000; Windows 98; Windows ME; Windows NT; Windows XP Service Pack 1
|
||||||
|
// WARNING: express setup (downloads and installs the components depending on your OS)
|
||||||
|
// http://www.microsoft.com/downloads/details.aspx?familyid=1E1550CB-5E5D-48F5-B02B-20B602228DE6
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
ie6_title=Internet Explorer 6
|
||||||
|
|
||||||
|
en.ie6_size=1 MB - 77.5 MB
|
||||||
|
de.ie6_size=1 MB - 77,5 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
ie6_url = 'http://download.microsoft.com/download/ie6sp1/finrel/6_sp1/W98NT42KMeXP/EN-US/ie6setup.exe';
|
||||||
|
|
||||||
|
procedure ie6(MinVersion: string);
|
||||||
|
var
|
||||||
|
version: string;
|
||||||
|
begin
|
||||||
|
RegQueryStringValue(HKLM, 'Software\Microsoft\Internet Explorer', 'Version', version);
|
||||||
|
if (compareversion(version, MinVersion) < 0) then
|
||||||
|
AddProduct('ie6.exe',
|
||||||
|
'/q:a /C:"setup /QNT"',
|
||||||
|
CustomMessage('ie6_title'),
|
||||||
|
CustomMessage('ie6_size'),
|
||||||
|
ie6_url,
|
||||||
|
false, false);
|
||||||
|
end;
|
12
InnoSetup/Scripts/products/iis.iss
Normal file
12
InnoSetup/Scripts/products/iis.iss
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
[CustomMessages]
|
||||||
|
iis_title=Internet Information Services (IIS)
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
function iis(): boolean;
|
||||||
|
begin
|
||||||
|
if (not RegKeyExists(HKLM, 'SYSTEM\CurrentControlSet\Services\W3SVC\Security')) then
|
||||||
|
MsgBox(FmtMessage(CustomMessage('depinstall_missing'), [CustomMessage('iis_title')]), mbError, MB_OK)
|
||||||
|
else
|
||||||
|
Result := true;
|
||||||
|
end;
|
24
InnoSetup/Scripts/products/jet4sp8.iss
Normal file
24
InnoSetup/Scripts/products/jet4sp8.iss
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
// http://support.microsoft.com/kb/239114
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
jet4sp8_title=Jet 4
|
||||||
|
|
||||||
|
en.jet4sp8_size=3.7 MB
|
||||||
|
de.jet4sp8_size=3,7 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
jet4sp8_url = 'http://download.microsoft.com/download/4/3/9/4393c9ac-e69e-458d-9f6d-2fe191c51469/Jet40SP8_9xNT.exe';
|
||||||
|
|
||||||
|
procedure jet4sp8(MinVersion: string);
|
||||||
|
begin
|
||||||
|
//check for Jet4 Service Pack 8 installation
|
||||||
|
if (compareversion(fileversion(ExpandConstant('{sys}{\}msjet40.dll')), MinVersion) < 0) then
|
||||||
|
AddProduct('jet4sp8.exe',
|
||||||
|
'/q:a /c:"install /qb /l"',
|
||||||
|
CustomMessage('jet4sp8_title'),
|
||||||
|
CustomMessage('jet4sp8_size'),
|
||||||
|
jet4sp8_url,
|
||||||
|
false, false);
|
||||||
|
end;
|
28
InnoSetup/Scripts/products/kb835732.iss
Normal file
28
InnoSetup/Scripts/products/kb835732.iss
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
// required by .NET Framework 2.0 Service Pack 1 on Windows 2000 Service Pack 2-4
|
||||||
|
// http://www.microsoft.com/technet/security/bulletin/ms04-011.mspx
|
||||||
|
// http://www.microsoft.com/downloads/details.aspx?FamilyId=0692C27E-F63A-414C-B3EB-D2342FBB6C00
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
en.kb835732_title=Windows 2000 Security Update (KB835732)
|
||||||
|
de.kb835732_title=Windows 2000 Sicherheitsupdate (KB835732)
|
||||||
|
|
||||||
|
en.kb835732_size=6.8 MB
|
||||||
|
de.kb835732_size=6,8 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
kb835732_url = 'http://download.microsoft.com/download/f/a/a/faa796aa-399d-437a-9284-c3536e9f2e6e/Windows2000-KB835732-x86-ENU.EXE';
|
||||||
|
|
||||||
|
procedure kb835732();
|
||||||
|
begin
|
||||||
|
if (exactwinversion(5, 0) and (minwinspversion(5, 0, 2) and maxwinspversion(5, 0, 4))) then begin
|
||||||
|
if (not RegKeyExists(HKLM, 'SOFTWARE\Microsoft\Updates\Windows 2000\SP5\KB835732\Filelist')) then
|
||||||
|
AddProduct('kb835732.exe',
|
||||||
|
'/q:a /c:"install /q"',
|
||||||
|
CustomMessage('kb835732_title'),
|
||||||
|
CustomMessage('kb835732_size'),
|
||||||
|
kb835732_url,
|
||||||
|
false, false);
|
||||||
|
end;
|
||||||
|
end;
|
25
InnoSetup/Scripts/products/mdac28.iss
Normal file
25
InnoSetup/Scripts/products/mdac28.iss
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
[CustomMessages]
|
||||||
|
mdac28_title=Microsoft Data Access Components 2.8
|
||||||
|
|
||||||
|
en.mdac28_size=5.4 MB
|
||||||
|
de.mdac28_size=5,4 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
mdac28_url = 'http://download.microsoft.com/download/c/d/f/cdfd58f1-3973-4c51-8851-49ae3777586f/MDAC_TYP.EXE';
|
||||||
|
|
||||||
|
procedure mdac28(MinVersion: string);
|
||||||
|
var
|
||||||
|
version: string;
|
||||||
|
begin
|
||||||
|
//check for MDAC installation
|
||||||
|
RegQueryStringValue(HKLM, 'Software\Microsoft\DataAccess', 'FullInstallVer', version);
|
||||||
|
if (compareversion(version, MinVersion) < 0) then
|
||||||
|
AddProduct('mdac28.exe',
|
||||||
|
'/q:a /c:"install /qb /l"',
|
||||||
|
CustomMessage('mdac28_title'),
|
||||||
|
CustomMessage('mdac28_size'),
|
||||||
|
mdac28_url,
|
||||||
|
false, false);
|
||||||
|
end;
|
22
InnoSetup/Scripts/products/msi20.iss
Normal file
22
InnoSetup/Scripts/products/msi20.iss
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
[CustomMessages]
|
||||||
|
msi20_title=Windows Installer 2.0
|
||||||
|
|
||||||
|
en.msi20_size=1.7 MB
|
||||||
|
de.msi20_size=1,7 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
msi20_url = 'http://download.microsoft.com/download/WindowsInstaller/Install/2.0/W9XMe/EN-US/InstMsiA.exe';
|
||||||
|
|
||||||
|
procedure msi20(MinVersion: string);
|
||||||
|
begin
|
||||||
|
// Check for required Windows Installer 2.0 on Windows 98 and ME
|
||||||
|
if (IsX86() and maxwinversion(4, 9) and (compareversion(fileversion(ExpandConstant('{sys}{\}msi.dll')), MinVersion) < 0)) then
|
||||||
|
AddProduct('msi20.exe',
|
||||||
|
'/q:a /c:"msiinst /delayrebootq"',
|
||||||
|
CustomMessage('msi20_title'),
|
||||||
|
CustomMessage('msi20_size'),
|
||||||
|
msi20_url,
|
||||||
|
false, false);
|
||||||
|
end;
|
22
InnoSetup/Scripts/products/msi31.iss
Normal file
22
InnoSetup/Scripts/products/msi31.iss
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
[CustomMessages]
|
||||||
|
msi31_title=Windows Installer 3.1
|
||||||
|
|
||||||
|
en.msi31_size=2.5 MB
|
||||||
|
de.msi31_size=2,5 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
msi31_url = 'http://download.microsoft.com/download/1/4/7/147ded26-931c-4daf-9095-ec7baf996f46/WindowsInstaller-KB893803-v2-x86.exe';
|
||||||
|
|
||||||
|
procedure msi31(MinVersion: string);
|
||||||
|
begin
|
||||||
|
// Check for required Windows Installer 3.0 on Windows 2000 or higher
|
||||||
|
if (IsX86() and minwinversion(5, 0) and (compareversion(fileversion(ExpandConstant('{sys}{\}msi.dll')), MinVersion) < 0)) then
|
||||||
|
AddProduct('msi31.exe',
|
||||||
|
'/passive /norestart',
|
||||||
|
CustomMessage('msi31_title'),
|
||||||
|
CustomMessage('msi31_size'),
|
||||||
|
msi31_url,
|
||||||
|
false, false);
|
||||||
|
end;
|
45
InnoSetup/Scripts/products/msi45.iss
Normal file
45
InnoSetup/Scripts/products/msi45.iss
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
[CustomMessages]
|
||||||
|
msi45_title=Windows Installer 4.5
|
||||||
|
|
||||||
|
en.msi45win60_size=1.7 MB
|
||||||
|
de.msi45win60_size=1,7 MB
|
||||||
|
|
||||||
|
en.msi45win52_size=3.0 MB
|
||||||
|
de.msi45win52_size=3,0 MB
|
||||||
|
|
||||||
|
en.msi45win51_size=3.2 MB
|
||||||
|
de.msi45win51_size=3,2 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
msi45win60_url = 'http://download.microsoft.com/download/2/6/1/261fca42-22c0-4f91-9451-0e0f2e08356d/Windows6.0-KB942288-v2-x86.msu';
|
||||||
|
msi45win52_url = 'http://download.microsoft.com/download/2/6/1/261fca42-22c0-4f91-9451-0e0f2e08356d/WindowsServer2003-KB942288-v4-x86.exe';
|
||||||
|
msi45win51_url = 'http://download.microsoft.com/download/2/6/1/261fca42-22c0-4f91-9451-0e0f2e08356d/WindowsXP-KB942288-v3-x86.exe';
|
||||||
|
|
||||||
|
procedure msi45(MinVersion: string);
|
||||||
|
begin
|
||||||
|
if (IsX86() and (compareversion(fileversion(ExpandConstant('{sys}{\}msi.dll')), MinVersion) < 0)) then begin
|
||||||
|
if minwinversion(6, 0) then
|
||||||
|
AddProduct('msi45_60.msu',
|
||||||
|
'/quiet /norestart',
|
||||||
|
CustomMessage('msi45_title'),
|
||||||
|
CustomMessage('msi45win60_size'),
|
||||||
|
msi45win60_url,
|
||||||
|
false, false)
|
||||||
|
else if minwinversion(5, 2) then
|
||||||
|
AddProduct('msi45_52.exe',
|
||||||
|
'/quiet /norestart',
|
||||||
|
CustomMessage('msi45_title'),
|
||||||
|
CustomMessage('msi45win52_size'),
|
||||||
|
msi45win52_url,
|
||||||
|
false, false)
|
||||||
|
else if minwinversion(5, 1) then
|
||||||
|
AddProduct('msi45_51.exe',
|
||||||
|
'/quiet /norestart',
|
||||||
|
CustomMessage('msi45_title'),
|
||||||
|
CustomMessage('msi45win51_size'),
|
||||||
|
msi45win51_url,
|
||||||
|
false, false);
|
||||||
|
end;
|
||||||
|
end;
|
42
InnoSetup/Scripts/products/sql2005express.iss
Normal file
42
InnoSetup/Scripts/products/sql2005express.iss
Normal file
|
@ -0,0 +1,42 @@
|
||||||
|
// SQL Server Express is supported on x64 and EMT64 systems in Windows On Windows (WOW). SQL Server Express is not supported on IA64 systems
|
||||||
|
// requires Microsoft .NET Framework 2.0 or later
|
||||||
|
// SQLEXPR32.EXE is a smaller package that can be used to install SQL Server Express on 32-bit operating systems only. The larger SQLEXPR.EXE package supports installing onto both 32-bit and 64-bit (WOW install) operating systems. There is no other difference between these packages.
|
||||||
|
// http://www.microsoft.com/download/en/details.aspx?id=15291
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
sql2005express_title=SQL Server 2005 Express SP3
|
||||||
|
|
||||||
|
en.sql2005express_size=38.1 MB
|
||||||
|
de.sql2005express_size=38,1 MB
|
||||||
|
|
||||||
|
en.sql2005express_size_x64=58.1 MB
|
||||||
|
de.sql2005express_size_x64=58,1 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
sql2005express_url = 'http://download.microsoft.com/download/4/B/E/4BED5810-C8C0-4697-BDC3-DBC114B8FF6D/SQLEXPR32_NLA.EXE';
|
||||||
|
sql2005express_url_x64 = 'http://download.microsoft.com/download/4/B/E/4BED5810-C8C0-4697-BDC3-DBC114B8FF6D/SQLEXPR_NLA.EXE';
|
||||||
|
|
||||||
|
procedure sql2005express();
|
||||||
|
var
|
||||||
|
version: string;
|
||||||
|
begin
|
||||||
|
//CHECK NOT FINISHED YET
|
||||||
|
//RTM: 9.00.1399.06
|
||||||
|
//Service Pack 1: 9.1.2047.00
|
||||||
|
//Service Pack 2: 9.2.3042.00
|
||||||
|
// Newer detection method required for SP3 and x64
|
||||||
|
//Service Pack 3: 9.00.4035.00
|
||||||
|
//RegQueryDWordValue(HKLM, 'Software\Microsoft\Microsoft SQL Server\90\DTS\Setup', 'Install', version);
|
||||||
|
RegQueryStringValue(HKLM, 'SOFTWARE\Microsoft\Microsoft SQL Server\SQLEXPRESS\MSSQLServer\CurrentVersion', 'CurrentVersion', version);
|
||||||
|
if (version < '9.00.4035') then begin
|
||||||
|
if (not isIA64()) then
|
||||||
|
AddProduct('sql2005express' + GetArchitectureString() + '.exe',
|
||||||
|
'/qb ADDLOCAL=ALL INSTANCENAME=SQLEXPRESS',
|
||||||
|
CustomMessage('sql2005express_title'),
|
||||||
|
CustomMessage('sql2005express_size' + GetArchitectureString()),
|
||||||
|
GetString(sql2005express_url, sql2005express_url_x64, ''),
|
||||||
|
false, false);
|
||||||
|
end;
|
||||||
|
end;
|
39
InnoSetup/Scripts/products/sql2008express.iss
Normal file
39
InnoSetup/Scripts/products/sql2008express.iss
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
// requires Windows 7, Windows Server 2003, Windows Server 2008, Windows Server 2008 R2, Windows Vista, Windows XP
|
||||||
|
// requires Microsoft .NET Framework 3.5 SP 1 or later
|
||||||
|
// requires Windows Installer 4.5 or later
|
||||||
|
// SQL Server Express is supported on x64 and EMT64 systems in Windows On Windows (WOW). SQL Server Express is not supported on IA64 systems
|
||||||
|
// SQLEXPR32.EXE is a smaller package that can be used to install SQL Server Express on 32-bit operating systems only. The larger SQLEXPR.EXE package supports installing onto both 32-bit and 64-bit (WOW install) operating systems. There is no other difference between these packages.
|
||||||
|
// http://www.microsoft.com/download/en/details.aspx?id=3743
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
sql2008expressr2_title=SQL Server 2008 Express R2
|
||||||
|
|
||||||
|
en.sql2008expressr2_size=58.2 MB
|
||||||
|
de.sql2008expressr2_size=58,2 MB
|
||||||
|
|
||||||
|
en.sql2008expressr2_size_x64=74.1 MB
|
||||||
|
de.sql2008expressr2_size_x64=74,1 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
sql2008expressr2_url = 'http://download.microsoft.com/download/5/1/A/51A153F6-6B08-4F94-A7B2-BA1AD482BC75/SQLEXPR32_x86_ENU.exe';
|
||||||
|
sql2008expressr2_url_x64 = 'http://download.microsoft.com/download/5/1/A/51A153F6-6B08-4F94-A7B2-BA1AD482BC75/SQLEXPR_x64_ENU.exe';
|
||||||
|
|
||||||
|
procedure sql2008express();
|
||||||
|
var
|
||||||
|
version: string;
|
||||||
|
begin
|
||||||
|
// This check does not take into account that a full version of SQL Server could be installed,
|
||||||
|
// making Express unnecessary.
|
||||||
|
RegQueryStringValue(HKLM, 'SOFTWARE\Microsoft\Microsoft SQL Server\SQLEXPRESS\MSSQLServer\CurrentVersion', 'CurrentVersion', version);
|
||||||
|
if (compareversion(version, '10.5') < 0) then begin
|
||||||
|
if (not isIA64()) then
|
||||||
|
AddProduct('sql2008expressr2' + GetArchitectureString() + '.exe',
|
||||||
|
'/QS /IACCEPTSQLSERVERLICENSETERMS /ACTION=Install /FEATURES=All /INSTANCENAME=SQLEXPRESS /SQLSVCACCOUNT="NT AUTHORITY\Network Service" /SQLSYSADMINACCOUNTS="builtin\administrators"',
|
||||||
|
CustomMessage('sql2008expressr2_title'),
|
||||||
|
CustomMessage('sql2008expressr2_size' + GetArchitectureString()),
|
||||||
|
GetString(sql2008expressr2_url, sql2008expressr2_url_x64, ''),
|
||||||
|
false, false);
|
||||||
|
end;
|
||||||
|
end;
|
21
InnoSetup/Scripts/products/sqlcompact35sp2.iss
Normal file
21
InnoSetup/Scripts/products/sqlcompact35sp2.iss
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
[CustomMessages]
|
||||||
|
sqlcompact35sp2_title=SQL Server Compact 3.5 Service Pack 2
|
||||||
|
|
||||||
|
en.sqlcompact35sp2_size=5.3 MB
|
||||||
|
de.sqlcompact35sp2_size=5,3 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
sqlcompact35sp2_url = 'http://download.microsoft.com/download/E/C/1/EC1B2340-67A0-4B87-85F0-74D987A27160/SSCERuntime-ENU.exe';
|
||||||
|
|
||||||
|
procedure sqlcompact35sp2();
|
||||||
|
begin
|
||||||
|
if (isX86() and not RegKeyExists(HKLM, 'SOFTWARE\Microsoft\Microsoft SQL Server Compact Edition\v3.5')) then
|
||||||
|
AddProduct('sqlcompact35sp2.msi',
|
||||||
|
'/qb',
|
||||||
|
CustomMessage('sqlcompact35sp2_title'),
|
||||||
|
CustomMessage('sqlcompact35sp2_size'),
|
||||||
|
sqlcompact35sp2_url,
|
||||||
|
false, false);
|
||||||
|
end;
|
52
InnoSetup/Scripts/products/stringversion.iss
Normal file
52
InnoSetup/Scripts/products/stringversion.iss
Normal file
|
@ -0,0 +1,52 @@
|
||||||
|
function stringtoversion(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 compareinnerversion(var x, y: String): Integer;
|
||||||
|
var
|
||||||
|
num1, num2: Integer;
|
||||||
|
|
||||||
|
begin
|
||||||
|
num1 := stringtoversion(x);
|
||||||
|
num2 := stringtoversion(y);
|
||||||
|
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 := compareinnerversion(x, y);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function compareversion(versionA, versionB: String): Integer;
|
||||||
|
var
|
||||||
|
temp1, temp2: String;
|
||||||
|
|
||||||
|
begin
|
||||||
|
temp1 := versionA;
|
||||||
|
temp2 := versionB;
|
||||||
|
Result := compareinnerversion(temp1, temp2);
|
||||||
|
end;
|
45
InnoSetup/Scripts/products/vcredist2010.iss
Normal file
45
InnoSetup/Scripts/products/vcredist2010.iss
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
// requires Windows 7, Windows 7 Service Pack 1, Windows Server 2003 Service Pack 2, Windows Server 2008, Windows Server 2008 R2, Windows Server 2008 R2 SP1, Windows Vista Service Pack 1, Windows XP Service Pack 3
|
||||||
|
// requires Windows Installer 3.1 or later
|
||||||
|
// requires Internet Explorer 5.01 or later
|
||||||
|
// http://www.microsoft.com/downloads/en/details.aspx?FamilyID=9cfb2d51-5ff4-4491-b0e5-b386f32c0992
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
vcredist2010_title=Visual C++ 2010 Redistributable
|
||||||
|
|
||||||
|
en.vcredist2010_size=4.8 MB
|
||||||
|
de.vcredist2010_size=4,8 MB
|
||||||
|
|
||||||
|
en.vcredist2010_size_x64=5.5 MB
|
||||||
|
de.vcredist2010_size_x64=5,5 MB
|
||||||
|
|
||||||
|
en.vcredist2010_size_ia64=2.2 MB
|
||||||
|
de.vcredist2010_size_ia64=2,2 MB
|
||||||
|
|
||||||
|
;http://www.microsoft.com/globaldev/reference/lcid-all.mspx
|
||||||
|
en.vcredist2010_lcid=''
|
||||||
|
de.vcredist2010_lcid='/lcid 1031 '
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
vcredist2010_url = 'http://download.microsoft.com/download/5/B/C/5BC5DBB3-652D-4DCE-B14A-475AB85EEF6E/vcredist_x86.exe';
|
||||||
|
vcredist2010_url_x64 = 'http://download.microsoft.com/download/3/2/2/3224B87F-CFA0-4E70-BDA3-3DE650EFEBA5/vcredist_x64.exe';
|
||||||
|
vcredist2010_url_ia64 = 'http://download.microsoft.com/download/3/3/A/33A75193-2CBC-424E-A886-287551FF1EB5/vcredist_IA64.exe';
|
||||||
|
|
||||||
|
procedure vcredist2010();
|
||||||
|
var
|
||||||
|
version: cardinal;
|
||||||
|
begin
|
||||||
|
RegQueryDWordValue(HKLM, 'SOFTWARE\Microsoft\VisualStudio\10.0\VC\VCRedist\' + GetString('x86', 'x64', 'ia64'), 'Installed', version);
|
||||||
|
|
||||||
|
if ((version <> 1)) then
|
||||||
|
RegQueryDWordValue(HKLM, 'SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\VC\VCRedist\' + GetString('x86', 'x64', 'ia64'), 'Installed', version);
|
||||||
|
|
||||||
|
if ((version <> 1)) then
|
||||||
|
AddProduct('vcredist2010' + GetArchitectureString() + '.exe',
|
||||||
|
CustomMessage('vcredist2010_lcid') + '/passive /norestart',
|
||||||
|
CustomMessage('vcredist2010_title'),
|
||||||
|
CustomMessage('vcredist2010_size' + GetArchitectureString()),
|
||||||
|
GetString(vcredist2010_url, vcredist2010_url_x64, vcredist2010_url_ia64),
|
||||||
|
false, false);
|
||||||
|
end;
|
55
InnoSetup/Scripts/products/wic.iss
Normal file
55
InnoSetup/Scripts/products/wic.iss
Normal file
|
@ -0,0 +1,55 @@
|
||||||
|
//requires Windows Server 2003, Windows Server 2003 R2 Datacenter Edition (32-Bit x86), Windows Server 2003 R2 Enterprise Edition (32-Bit x86), Windows Server 2003 R2 Standard Edition (32-bit x86), Windows XP Service Pack 2
|
||||||
|
|
||||||
|
[CustomMessages]
|
||||||
|
wic_title=Windows Imaging Component
|
||||||
|
|
||||||
|
en.wic_size=1.2 MB
|
||||||
|
de.wic_size=1,2 MB
|
||||||
|
|
||||||
|
|
||||||
|
[Code]
|
||||||
|
const
|
||||||
|
wic_url = 'http://download.microsoft.com/download/f/f/1/ff178bb1-da91-48ed-89e5-478a99387d4f/wic_x86_';
|
||||||
|
wic_url_x64 = 'http://download.microsoft.com/download/6/4/5/645fed5f-a6e7-44d9-9d10-fe83348796b0/wic_x64';
|
||||||
|
|
||||||
|
function GetConvertedLanguageID(): string;
|
||||||
|
begin
|
||||||
|
case ActiveLanguage() of
|
||||||
|
'en': //English
|
||||||
|
Result := 'enu';
|
||||||
|
'zh': //Chinese
|
||||||
|
Result := 'chs';
|
||||||
|
'de': //German
|
||||||
|
Result := 'deu';
|
||||||
|
'es': //Spanish
|
||||||
|
Result := 'esn';
|
||||||
|
'fr': //French
|
||||||
|
Result := 'fra';
|
||||||
|
'it': //Italian
|
||||||
|
Result := 'ita';
|
||||||
|
'ja': //Japanese
|
||||||
|
Result := 'jpn';
|
||||||
|
'nl': //Dutch
|
||||||
|
Result := 'nld';
|
||||||
|
'pt': //Portuguese
|
||||||
|
Result := 'ptb';
|
||||||
|
'ru': //Russian
|
||||||
|
Result := 'rus';
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure wic();
|
||||||
|
begin
|
||||||
|
if (not isIA64()) then begin
|
||||||
|
//only needed on Windows XP SP2 or Windows Server 2003
|
||||||
|
if ((exactwinversion(5, 1) and exactwinspversion(5, 1, 2)) or (exactwinversion(5, 2))) then begin
|
||||||
|
if (not FileExists(GetEnv('windir') + '\system32\windowscodecs.dll')) then
|
||||||
|
AddProduct('wic' + GetArchitectureString() + '_' + GetConvertedLanguageID() + '.exe',
|
||||||
|
'/q',
|
||||||
|
CustomMessage('wic_title'),
|
||||||
|
CustomMessage('wic_size'),
|
||||||
|
GetString(wic_url, wic_url_x64, '') + GetConvertedLanguageID() + '.exe',
|
||||||
|
false, false);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
end;
|
47
InnoSetup/Scripts/products/winversion.iss
Normal file
47
InnoSetup/Scripts/products/winversion.iss
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
[Code]
|
||||||
|
var
|
||||||
|
WindowsVersion: TWindowsVersion;
|
||||||
|
|
||||||
|
procedure initwinversion();
|
||||||
|
begin
|
||||||
|
GetWindowsVersionEx(WindowsVersion);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function exactwinversion(MajorVersion, MinorVersion: integer): boolean;
|
||||||
|
begin
|
||||||
|
Result := (WindowsVersion.Major = MajorVersion) and (WindowsVersion.Minor = MinorVersion);
|
||||||
|
end;
|
||||||
|
|
||||||
|
function minwinversion(MajorVersion, MinorVersion: integer): boolean;
|
||||||
|
begin
|
||||||
|
Result := (WindowsVersion.Major > MajorVersion) or ((WindowsVersion.Major = MajorVersion) and (WindowsVersion.Minor >= MinorVersion));
|
||||||
|
end;
|
||||||
|
|
||||||
|
function maxwinversion(MajorVersion, MinorVersion: integer): boolean;
|
||||||
|
begin
|
||||||
|
Result := (WindowsVersion.Major < MajorVersion) or ((WindowsVersion.Major = MajorVersion) and (WindowsVersion.Minor <= MinorVersion));
|
||||||
|
end;
|
||||||
|
|
||||||
|
function exactwinspversion(MajorVersion, MinorVersion, SpVersion: integer): boolean;
|
||||||
|
begin
|
||||||
|
if exactwinversion(MajorVersion, MinorVersion) then
|
||||||
|
Result := WindowsVersion.ServicePackMajor = SpVersion
|
||||||
|
else
|
||||||
|
Result := true;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function minwinspversion(MajorVersion, MinorVersion, SpVersion: integer): boolean;
|
||||||
|
begin
|
||||||
|
if exactwinversion(MajorVersion, MinorVersion) then
|
||||||
|
Result := WindowsVersion.ServicePackMajor >= SpVersion
|
||||||
|
else
|
||||||
|
Result := true;
|
||||||
|
end;
|
||||||
|
|
||||||
|
function maxwinspversion(MajorVersion, MinorVersion, SpVersion: integer): boolean;
|
||||||
|
begin
|
||||||
|
if exactwinversion(MajorVersion, MinorVersion) then
|
||||||
|
Result := WindowsVersion.ServicePackMajor <= SpVersion
|
||||||
|
else
|
||||||
|
Result := true;
|
||||||
|
end;
|
|
@ -1,6 +1,6 @@
|
||||||
#define MyAppName "ShareX"
|
#define MyAppName "ShareX"
|
||||||
#define MyAppFile "ShareX.exe"
|
#define MyAppFile "ShareX.exe"
|
||||||
#define MyAppPath "ShareX\bin\Release\ShareX.exe"
|
#define MyAppPath "..\ShareX\bin\Release\ShareX.exe"
|
||||||
#dim Version[4]
|
#dim Version[4]
|
||||||
#expr ParseVersion(MyAppPath, Version[0], Version[1], Version[2], Version[3])
|
#expr ParseVersion(MyAppPath, Version[0], Version[1], Version[2], Version[3])
|
||||||
#define MyAppVersion Str(Version[0]) + "." + Str(Version[1]) + "." + Str(Version[2])
|
#define MyAppVersion Str(Version[0]) + "." + Str(Version[1]) + "." + Str(Version[2])
|
||||||
|
@ -26,10 +26,10 @@ CreateAppDir=true
|
||||||
DefaultDirName={pf}\{#MyAppName}
|
DefaultDirName={pf}\{#MyAppName}
|
||||||
DefaultGroupName={#MyAppName}
|
DefaultGroupName={#MyAppName}
|
||||||
DirExistsWarning=no
|
DirExistsWarning=no
|
||||||
InfoBeforeFile=Docs\VersionHistory.txt
|
InfoBeforeFile=..\Docs\VersionHistory.txt
|
||||||
InternalCompressLevel=ultra64
|
InternalCompressLevel=ultra64
|
||||||
LanguageDetectionMethod=uilanguage
|
LanguageDetectionMethod=uilanguage
|
||||||
LicenseFile=LICENSE.txt
|
LicenseFile=..\LICENSE.txt
|
||||||
MinVersion=0,5.01.2600
|
MinVersion=0,5.01.2600
|
||||||
OutputBaseFilename={#MyAppName}-{#MyAppVersion}-setup
|
OutputBaseFilename={#MyAppName}-{#MyAppVersion}-setup
|
||||||
OutputDir=Output\
|
OutputDir=Output\
|
||||||
|
@ -47,7 +47,8 @@ VersionInfoTextVersion={#MyAppVersion}
|
||||||
VersionInfoVersion={#MyAppVersion}
|
VersionInfoVersion={#MyAppVersion}
|
||||||
|
|
||||||
[Languages]
|
[Languages]
|
||||||
Name: "english"; MessagesFile: "compiler:Default.isl"
|
Name: "en"; MessagesFile: "compiler:Default.isl"
|
||||||
|
Name: "de"; MessagesFile: "compiler:Languages\German.isl"
|
||||||
|
|
||||||
[Tasks]
|
[Tasks]
|
||||||
Name: "CreateDesktopIcon"; Description: "Create a desktop shortcut"; GroupDescription: "Additional shortcuts:"
|
Name: "CreateDesktopIcon"; Description: "Create a desktop shortcut"; GroupDescription: "Additional shortcuts:"
|
||||||
|
@ -56,14 +57,14 @@ Name: "CreateSendToIcon"; Description: "Create a send to shortcut"; GroupDescrip
|
||||||
Name: "CreateStartupIcon"; Description: "Launch {#MyAppName} automatically at Windows startup"; GroupDescription: "Other tasks:"; Flags: unchecked
|
Name: "CreateStartupIcon"; Description: "Launch {#MyAppName} automatically at Windows startup"; GroupDescription: "Other tasks:"; Flags: unchecked
|
||||||
|
|
||||||
[Files]
|
[Files]
|
||||||
Source: "ShareX\bin\Release\*.exe"; Excludes: *.vshost.exe; DestDir: {app}; Flags: ignoreversion
|
Source: "..\ShareX\bin\Release\*.exe"; Excludes: *.vshost.exe; DestDir: {app}; Flags: ignoreversion
|
||||||
Source: "ShareX\bin\Release\*.dll"; DestDir: {app}; Flags: ignoreversion
|
Source: "..\ShareX\bin\Release\*.dll"; DestDir: {app}; Flags: ignoreversion
|
||||||
Source: "ShareX\bin\Release\*.css"; DestDir: {app}; Flags: ignoreversion
|
Source: "..\ShareX\bin\Release\*.css"; DestDir: {app}; Flags: ignoreversion
|
||||||
Source: "ShareX\bin\Release\*.txt"; DestDir: {app}; Flags: ignoreversion
|
Source: "..\ShareX\bin\Release\*.txt"; DestDir: {app}; Flags: ignoreversion
|
||||||
Source: "Lib\screen-capture-recorder.dll"; DestDir: {app}; Flags: regserver 32bit; Check: IsAdminLoggedOn
|
Source: "..\Lib\screen-capture-recorder.dll"; DestDir: {app}; Flags: regserver 32bit; Check: IsAdminLoggedOn
|
||||||
Source: "Lib\screen-capture-recorder-x64.dll"; DestDir: {app}; Flags: regserver 64bit; Check: IsAdminLoggedOn and IsWin64
|
Source: "..\Lib\screen-capture-recorder-x64.dll"; DestDir: {app}; Flags: regserver 64bit; Check: IsAdminLoggedOn and IsWin64
|
||||||
Source: "Lib\audio_sniffer.dll"; DestDir: {app}; Flags: regserver 32bit; Check: IsAdminLoggedOn
|
Source: "..\Lib\audio_sniffer.dll"; DestDir: {app}; Flags: regserver 32bit; Check: IsAdminLoggedOn
|
||||||
Source: "Lib\audio_sniffer-x64.dll"; DestDir: {app}; Flags: regserver 64bit; Check: IsAdminLoggedOn and IsWin64
|
Source: "..\Lib\audio_sniffer-x64.dll"; DestDir: {app}; Flags: regserver 64bit; Check: IsAdminLoggedOn and IsWin64
|
||||||
|
|
||||||
[Icons]
|
[Icons]
|
||||||
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppFile}"; WorkingDir: "{app}"
|
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppFile}"; WorkingDir: "{app}"
|
||||||
|
@ -82,7 +83,27 @@ Root: "HKCU"; Subkey: "Software\Classes\*\shell\{#MyAppName}"; Flags: dontcreate
|
||||||
Root: "HKCU"; Subkey: "Software\Classes\Directory\shell\{#MyAppName}"; Flags: dontcreatekey uninsdeletekey
|
Root: "HKCU"; Subkey: "Software\Classes\Directory\shell\{#MyAppName}"; Flags: dontcreatekey uninsdeletekey
|
||||||
Root: "HKCU"; Subkey: "Software\Classes\Folder\shell\{#MyAppName}"; Flags: dontcreatekey uninsdeletekey
|
Root: "HKCU"; Subkey: "Software\Classes\Folder\shell\{#MyAppName}"; Flags: dontcreatekey uninsdeletekey
|
||||||
|
|
||||||
|
#include "Scripts\products.iss"
|
||||||
|
#include "Scripts\products\stringversion.iss"
|
||||||
|
#include "Scripts\products\winversion.iss"
|
||||||
|
#include "Scripts\products\fileversion.iss"
|
||||||
|
#include "Scripts\products\dotnetfxversion.iss"
|
||||||
|
#include "Scripts\products\msi31.iss"
|
||||||
|
#include "Scripts\products\dotnetfx40full.iss"
|
||||||
|
#include "Scripts\products\vcredist2010.iss"
|
||||||
|
|
||||||
[Code]
|
[Code]
|
||||||
|
function InitializeSetup(): Boolean;
|
||||||
|
begin
|
||||||
|
initwinversion();
|
||||||
|
|
||||||
|
msi31('3.1');
|
||||||
|
dotnetfx40full();
|
||||||
|
vcredist2010();
|
||||||
|
|
||||||
|
Result := true;
|
||||||
|
end;
|
||||||
|
|
||||||
function DesktopIconExists(): Boolean;
|
function DesktopIconExists(): Boolean;
|
||||||
begin
|
begin
|
||||||
Result := FileExists(ExpandConstant('{userdesktop}\{#MyAppName}.lnk'));
|
Result := FileExists(ExpandConstant('{userdesktop}\{#MyAppName}.lnk'));
|
Loading…
Reference in a new issue