diff --git a/Greenshot/releases/innosetup/IssProc/IssProc.dll b/Greenshot/releases/innosetup/IssProc/IssProc.dll new file mode 100644 index 000000000..798cb5aca Binary files /dev/null and b/Greenshot/releases/innosetup/IssProc/IssProc.dll differ diff --git a/Greenshot/releases/innosetup/IssProc/IssProcLanguage.ini b/Greenshot/releases/innosetup/IssProc/IssProcLanguage.ini new file mode 100644 index 000000000..0c0932537 Binary files /dev/null and b/Greenshot/releases/innosetup/IssProc/IssProcLanguage.ini differ diff --git a/Greenshot/releases/innosetup/scripts/isxdl/czech.ini b/Greenshot/releases/innosetup/scripts/isxdl/czech.ini new file mode 100644 index 000000000..4025760bf --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/isxdl/czech.ini @@ -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: + diff --git a/Greenshot/releases/innosetup/scripts/isxdl/english.ini b/Greenshot/releases/innosetup/scripts/isxdl/english.ini new file mode 100644 index 000000000..03176edde --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/isxdl/english.ini @@ -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: diff --git a/Greenshot/releases/innosetup/scripts/isxdl/french.ini b/Greenshot/releases/innosetup/scripts/isxdl/french.ini new file mode 100644 index 000000000..db802535e --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/isxdl/french.ini @@ -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 diff --git a/Greenshot/releases/innosetup/scripts/isxdl/french2.ini b/Greenshot/releases/innosetup/scripts/isxdl/french2.ini new file mode 100644 index 000000000..b850990fb --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/isxdl/french2.ini @@ -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 diff --git a/Greenshot/releases/innosetup/scripts/isxdl/french3.ini b/Greenshot/releases/innosetup/scripts/isxdl/french3.ini new file mode 100644 index 000000000..e8d1e4e36 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/isxdl/french3.ini @@ -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 diff --git a/Greenshot/releases/innosetup/scripts/isxdl/german.ini b/Greenshot/releases/innosetup/scripts/isxdl/german.ini new file mode 100644 index 000000000..77f443966 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/isxdl/german.ini @@ -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 diff --git a/Greenshot/releases/innosetup/scripts/isxdl/german2.ini b/Greenshot/releases/innosetup/scripts/isxdl/german2.ini new file mode 100644 index 000000000..0a4bf0c86 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/isxdl/german2.ini @@ -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 diff --git a/Greenshot/releases/innosetup/scripts/isxdl/german3.ini b/Greenshot/releases/innosetup/scripts/isxdl/german3.ini new file mode 100644 index 000000000..58f1b716d --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/isxdl/german3.ini @@ -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 diff --git a/Greenshot/releases/innosetup/scripts/isxdl/isxdl.dll b/Greenshot/releases/innosetup/scripts/isxdl/isxdl.dll new file mode 100644 index 000000000..d227bcad8 Binary files /dev/null and b/Greenshot/releases/innosetup/scripts/isxdl/isxdl.dll differ diff --git a/Greenshot/releases/innosetup/scripts/isxdl/isxdl.iss b/Greenshot/releases/innosetup/scripts/isxdl/isxdl.iss new file mode 100644 index 000000000..7e8866153 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/isxdl/isxdl.iss @@ -0,0 +1,12 @@ +[Files] +Source: "scripts\isxdl\isxdl.dll"; Flags: dontcopy + +[Code] +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'; + +function isxdl_SetOption(Option, Value: PAnsiChar): Integer; +external 'isxdl_SetOption@files:isxdl.dll stdcall'; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/isxdl/norwegian.ini b/Greenshot/releases/innosetup/scripts/isxdl/norwegian.ini new file mode 100644 index 000000000..525f3bb0f --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/isxdl/norwegian.ini @@ -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: diff --git a/Greenshot/releases/innosetup/scripts/isxdl/polish.ini b/Greenshot/releases/innosetup/scripts/isxdl/polish.ini new file mode 100644 index 000000000..592097483 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/isxdl/polish.ini @@ -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 diff --git a/Greenshot/releases/innosetup/scripts/isxdl/portugues.ini b/Greenshot/releases/innosetup/scripts/isxdl/portugues.ini new file mode 100644 index 000000000..4ce280ec6 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/isxdl/portugues.ini @@ -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 diff --git a/Greenshot/releases/innosetup/scripts/isxdl/portuguese.ini b/Greenshot/releases/innosetup/scripts/isxdl/portuguese.ini new file mode 100644 index 000000000..84f9da483 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/isxdl/portuguese.ini @@ -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 diff --git a/Greenshot/releases/innosetup/scripts/isxdl/russian.ini b/Greenshot/releases/innosetup/scripts/isxdl/russian.ini new file mode 100644 index 000000000..5cfae9227 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/isxdl/russian.ini @@ -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=Ïàðîëü: diff --git a/Greenshot/releases/innosetup/scripts/isxdl/spanish.ini b/Greenshot/releases/innosetup/scripts/isxdl/spanish.ini new file mode 100644 index 000000000..6f7cee2ca --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/isxdl/spanish.ini @@ -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 diff --git a/Greenshot/releases/innosetup/scripts/isxdl/swedish.ini b/Greenshot/releases/innosetup/scripts/isxdl/swedish.ini new file mode 100644 index 000000000..a0eae2a59 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/isxdl/swedish.ini @@ -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: diff --git a/Greenshot/releases/innosetup/scripts/products.iss b/Greenshot/releases/innosetup/scripts/products.iss new file mode 100644 index 000000000..5b48c3f8b --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products.iss @@ -0,0 +1,188 @@ +#include "scripts\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 + +de.isxdl_langfile=german2.ini + + +[Files] +Source: "scripts\isxdl\german2.ini"; Flags: dontcopy + +[Code] +type + TProduct = record + File: String; + Title: String; + Parameters: String; + end; + +var + installMemo, downloadMemo, downloadMessage: string; + products: array of TProduct; + DependencyPage: TOutputProgressWizardPage; + + +procedure AddProduct(FileName, Parameters, Title, Size, URL: string); +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; +end; + +function InstallProducts: Boolean; +var + ResultCode, i, productCount, finishCount: Integer; +begin + Result := true; + 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 + DependencyPage.SetText(FmtMessage(CustomMessage('depinstall_status'), [products[i].Title]), ''); + DependencyPage.SetProgress(i, productCount); + + if Exec(products[i].File, products[i].Parameters, '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode) then begin + //success; ResultCode contains the exit code + if ResultCode = 0 then + finishCount := finishCount + 1 + else begin + Result := false; + break; + end; + end else begin + //failure; ResultCode contains the error code + Result := false; + 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 + if not InstallProducts() then begin + s := CustomMessage('depinstall_error'); + + for i := 0 to GetArrayLength(products) - 1 do begin + s := s + #13 + ' ' + products[i].Title; + end; + + Result := s; + end; +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 ProductNextButtonClick(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 IsX64: Boolean; +begin + Result := Is64BitInstallMode and (ProcessorArchitecture = paX64); +end; + +function IsIA64: Boolean; +begin + Result := Is64BitInstallMode and (ProcessorArchitecture = paIA64); +end; + +function GetURL(x86, x64, ia64: String): String; +begin + if IsX64() and (x64 <> '') then + Result := x64; + if IsIA64() and (ia64 <> '') then + Result := ia64; + + if Result = '' then + Result := x86; +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/dotnetfx11.iss b/Greenshot/releases/innosetup/scripts/products/dotnetfx11.iss new file mode 100644 index 000000000..314f6ada5 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/dotnetfx11.iss @@ -0,0 +1,27 @@ +// 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(); +var + version: cardinal; +begin + RegQueryDWordValue(HKLM, 'Software\Microsoft\NET Framework Setup\NDP\v1.1.4322', 'Install', version); + if version <> 1 then + AddProduct('dotnetfx11.exe', + '/q:a /c:"install /qb /l"', + CustomMessage('dotnetfx11_title'), + CustomMessage('dotnetfx11_size'), + dotnetfx11_url); +end; diff --git a/Greenshot/releases/innosetup/scripts/products/dotnetfx11lp.iss b/Greenshot/releases/innosetup/scripts/products/dotnetfx11lp.iss new file mode 100644 index 000000000..b14cc0286 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/dotnetfx11lp.iss @@ -0,0 +1,27 @@ +[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(); +var + version: cardinal; +begin + if ActiveLanguage() <> 'en' then begin + RegQueryDWordValue(HKLM, 'Software\Microsoft\NET Framework Setup\NDP\v1.1.4322\' + CustomMessage('dotnetfx11lp_lcid'), 'Install', version); + + if version <> 1 then + AddProduct(ExpandConstant('dotnetfx11_langpack.exe'), + '/q:a /c:"inst.exe /qb /l"', + CustomMessage('dotnetfx11lp_title'), + CustomMessage('dotnetfx11lp_size'), + CustomMessage('dotnetfx11lp_url')); + end; +end; diff --git a/Greenshot/releases/innosetup/scripts/products/dotnetfx11sp1.iss b/Greenshot/releases/innosetup/scripts/products/dotnetfx11sp1.iss new file mode 100644 index 000000000..bc21d95fe --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/dotnetfx11sp1.iss @@ -0,0 +1,27 @@ +// 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(); +var + version: cardinal; +begin + RegQueryDWordValue(HKLM, 'Software\Microsoft\NET Framework Setup\NDP\v1.1.4322', 'SP', version); + if version < 1 then + AddProduct('dotnetfx11sp1.exe', + '/q', + CustomMessage('dotnetfx11sp1_title'), + CustomMessage('dotnetfx11sp1_size'), + dotnetfx11sp1_url); +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/dotnetfx20.iss b/Greenshot/releases/innosetup/scripts/products/dotnetfx20.iss new file mode 100644 index 000000000..e72000254 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/dotnetfx20.iss @@ -0,0 +1,32 @@ +// 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 + +en.dotnetfx20_size=23 MB +de.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(); +var + version: cardinal; +begin + RegQueryDWordValue(HKEY_LOCAL_MACHINE, 'Software\Microsoft\NET Framework Setup\NDP\v2.0.50727', 'Install', version); + if version <> 1 then begin + AddProduct('dotnetfx20.exe', + '/q:a /t:' + ExpandConstant('{tmp}{\}') + 'dotnetfx20 /c:"install /qb /l"', + CustomMessage('dotnetfx20_title'), + CustomMessage('dotnetfx20_size'), + GetURL(dotnetfx20_url, dotnetfx20_url_x64, dotnetfx20_url_ia64)); + end; +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/dotnetfx20lp.iss b/Greenshot/releases/innosetup/scripts/products/dotnetfx20lp.iss new file mode 100644 index 000000000..19ea5a800 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/dotnetfx20lp.iss @@ -0,0 +1,31 @@ +//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(); +var + version: cardinal; +begin + if ActiveLanguage() <> 'en' then begin + RegQueryDWordValue(HKLM, 'Software\Microsoft\NET Framework Setup\NDP\v2.0.50727\' + CustomMessage('dotnetfx20lp_lcid'), 'Install', version); + + if version <> 1 then + AddProduct(ExpandConstant('dotnetfx20_langpack.exe'), + '/q:a /c:"install /qb /l"', + CustomMessage('dotnetfx20lp_title'), + CustomMessage('dotnetfx20lp_size'), + GetURL(CustomMessage('dotnetfx20lp_url'), CustomMessage('dotnetfx20lp_url_x64'), CustomMessage('dotnetfx20lp_url_ia64'))); + end; +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/dotnetfx20sp1.iss b/Greenshot/releases/innosetup/scripts/products/dotnetfx20sp1.iss new file mode 100644 index 000000000..fcb9474d7 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/dotnetfx20sp1.iss @@ -0,0 +1,29 @@ +// 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(); +var + version: cardinal; +begin + RegQueryDWordValue(HKLM, 'Software\Microsoft\NET Framework Setup\NDP\v2.0.50727', 'SP', version); + if version < 1 then + AddProduct('dotnetfx20sp1.exe', + '/q:a /t:' + ExpandConstant('{tmp}{\}') + 'dotnetfx20sp1 /c:"install /qb /l /msipassthru MSI_PROP_BEGIN" REBOOT=Suppress "MSI_PROP_END"', + CustomMessage('dotnetfx20sp1_title'), + CustomMessage('dotnetfx20sp1_size'), + GetURL(dotnetfx20sp1_url, dotnetfx20sp1_url_x64, dotnetfx20sp1_url_ia64)); +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/dotnetfx20sp1lp.iss b/Greenshot/releases/innosetup/scripts/products/dotnetfx20sp1lp.iss new file mode 100644 index 000000000..7d1cba709 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/dotnetfx20sp1lp.iss @@ -0,0 +1,31 @@ +//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(); +var + version: cardinal; +begin + if ActiveLanguage() <> 'en' then begin + RegQueryDWordValue(HKLM, 'Software\Microsoft\NET Framework Setup\NDP\v2.0.50727\' + CustomMessage('dotnetfx20sp1lp_lcid'), 'SP', version); + + if version < 1 then + AddProduct(ExpandConstant('dotnetfx20sp1_langpack.exe'), + '/q:a /c:"install /qb /l"', + CustomMessage('dotnetfx20sp1lp_title'), + CustomMessage('dotnetfx20sp1lp_size'), + GetURL(CustomMessage('dotnetfx20sp1lp_url'), CustomMessage('dotnetfx20sp1lp_url_x64'), CustomMessage('dotnetfx20sp1lp_url_ia64'))); + end; +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/dotnetfx20sp2.iss b/Greenshot/releases/innosetup/scripts/products/dotnetfx20sp2.iss new file mode 100644 index 000000000..ba17c1921 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/dotnetfx20sp2.iss @@ -0,0 +1,27 @@ +//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(); +var + version: cardinal; +begin + RegQueryDWordValue(HKLM, 'Software\Microsoft\NET Framework Setup\NDP\v2.0.50727', 'SP', version); + if version < 2 then + AddProduct('dotnetfx20sp2.exe', + '/lang:enu /qb /norestart', + CustomMessage('dotnetfx20sp2_title'), + CustomMessage('dotnetfx20sp2_size'), + GetURL(dotnetfx20sp2_url, dotnetfx20sp2_url_x64, dotnetfx20sp2_url_ia64)); +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/dotnetfx20sp2lp.iss b/Greenshot/releases/innosetup/scripts/products/dotnetfx20sp2lp.iss new file mode 100644 index 000000000..f711fbd68 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/dotnetfx20sp2lp.iss @@ -0,0 +1,31 @@ +//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(); +var + version: cardinal; +begin + if ActiveLanguage() <> 'en' then begin + RegQueryDWordValue(HKLM, 'Software\Microsoft\NET Framework Setup\NDP\v2.0.50727\' + CustomMessage('dotnetfx20sp2lp_lcid'), 'SP', version); + + if version < 2 then + AddProduct(ExpandConstant('dotnetfx20sp2_langpack.exe'), + '/lang:enu /qb /norestart"', + CustomMessage('dotnetfx20sp2lp_title'), + CustomMessage('dotnetfx20sp2lp_size'), + GetURL(CustomMessage('dotnetfx20sp2lp_url'), CustomMessage('dotnetfx20sp2lp_url_x64'), CustomMessage('dotnetfx20sp2lp_url_ia64'))); + end; +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/dotnetfx35.iss b/Greenshot/releases/innosetup/scripts/products/dotnetfx35.iss new file mode 100644 index 000000000..fa7d9421e --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/dotnetfx35.iss @@ -0,0 +1,28 @@ +// 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 + +en.dotnetfx35_size=3 MB - 197 MB +de.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(); +var + version: cardinal; +begin + RegQueryDWordValue(HKLM, 'Software\Microsoft\NET Framework Setup\NDP\v3.5', 'Install', version); + if version <> 1 then + AddProduct('dotnetfx35.exe', + '/lang:enu /qb /norestart', + CustomMessage('dotnetfx35_title'), + CustomMessage('dotnetfx35_size'), + dotnetfx35_url); +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/dotnetfx35lp.iss b/Greenshot/releases/innosetup/scripts/products/dotnetfx35lp.iss new file mode 100644 index 000000000..016679a88 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/dotnetfx35lp.iss @@ -0,0 +1,27 @@ +[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(); +var + version: cardinal; +begin + if ActiveLanguage() <> 'en' then begin + RegQueryDWordValue(HKLM, 'Software\Microsoft\NET Framework Setup\NDP\v3.5\' + CustomMessage('dotnetfx35lp_lcid'), 'Install', version); + + if version <> 1 then + AddProduct('dotnetfx35_langpack.exe', + '/lang:enu /qb /norestart', + CustomMessage('dotnetfx35lp_title'), + CustomMessage('dotnetfx35lp_size'), + CustomMessage('dotnetfx35lp_url')); + end; +end; diff --git a/Greenshot/releases/innosetup/scripts/products/dotnetfx35sp1.iss b/Greenshot/releases/innosetup/scripts/products/dotnetfx35sp1.iss new file mode 100644 index 000000000..1b8632a6e --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/dotnetfx35sp1.iss @@ -0,0 +1,28 @@ +// 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(); +var + version: cardinal; +begin + RegQueryDWordValue(HKLM, 'Software\Microsoft\NET Framework Setup\NDP\v3.5', 'SP', version); + if version < 1 then + AddProduct('dotnetfx35sp1.exe', + '/lang:enu /qb /norestart', + CustomMessage('dotnetfx35sp1_title'), + CustomMessage('dotnetfx35sp1_size'), + dotnetfx35sp1_url); +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/dotnetfx35sp1lp.iss b/Greenshot/releases/innosetup/scripts/products/dotnetfx35sp1lp.iss new file mode 100644 index 000000000..e62fb17d9 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/dotnetfx35sp1lp.iss @@ -0,0 +1,27 @@ +[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(); +var + version: cardinal; +begin + if ActiveLanguage() <> 'en' then begin + RegQueryDWordValue(HKLM, 'Software\Microsoft\NET Framework Setup\NDP\v3.5\' + CustomMessage('dotnetfx35sp1lp_lcid'), 'SP', version); + + if version < 1 then + AddProduct('dotnetfx35sp1_langpack.exe', + '/lang:enu /qb /norestart', + CustomMessage('dotnetfx35sp1lp_title'), + CustomMessage('dotnetfx35sp1lp_size'), + CustomMessage('dotnetfx35sp1lp_url')); + end; +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/fileversion.iss b/Greenshot/releases/innosetup/scripts/products/fileversion.iss new file mode 100644 index 000000000..e747383b9 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/fileversion.iss @@ -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; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/ie6.iss b/Greenshot/releases/innosetup/scripts/products/ie6.iss new file mode 100644 index 000000000..2d0903b4c --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/ie6.iss @@ -0,0 +1,27 @@ +// 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 version < MinVersion then + AddProduct('ie6.exe', + '/q:a /C:"setup /QNT"', + CustomMessage('ie6_title'), + CustomMessage('ie6_size'), + ie6_url); +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/iis.iss b/Greenshot/releases/innosetup/scripts/products/iis.iss new file mode 100644 index 000000000..0e8beee40 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/iis.iss @@ -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; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/jet4sp8.iss b/Greenshot/releases/innosetup/scripts/products/jet4sp8.iss new file mode 100644 index 000000000..64c14f898 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/jet4sp8.iss @@ -0,0 +1,23 @@ +// 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 fileversion(ExpandConstant('{sys}{\}msjet40.dll')) < MinVersion then + AddProduct('jet4sp8.exe', + '/q:a /c:"install /qb /l"', + CustomMessage('jet4sp8_title'), + CustomMessage('jet4sp8_size'), + jet4sp8_url); +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/kb835732.iss b/Greenshot/releases/innosetup/scripts/products/kb835732.iss new file mode 100644 index 000000000..be87b2455 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/kb835732.iss @@ -0,0 +1,27 @@ +// 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 (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); + end; +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/kb886903.iss b/Greenshot/releases/innosetup/scripts/products/kb886903.iss new file mode 100644 index 000000000..f3426918d --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/kb886903.iss @@ -0,0 +1,32 @@ +// WARNING: Windows Update is better because there are different versions for different OS +// (optional) critical security hotfix for .NET Framework 1.1 Service Pack 1 on Windows 2000/XP/2003 +// http://support.microsoft.com/default.aspx?scid=kb;en-us;886903 +// http://www.microsoft.com/downloads/details.aspx?familyid=8EC6FB8A-29EB-49CF-9DBC-1A0DC2273FF9 + +[CustomMessages] +en.kb886903_title=.NET Framework 1.1 SP1 Security Update (KB886903) +de.kb886903_title=.NET Framework 1.1 SP1 Sicherheitsupdate (KB886903) + +en.kb886903_size=1.5 MB +de.kb886903_size=1,5 MB + + +[Code] +const + kb886903_url = 'http://download.microsoft.com/download/e/1/4/e14c0c02-591b-4696-8552-eb710c26a3cd/NDP1.1sp1-KB886903-X86.exe'; + +procedure kb886903(); +var + version: cardinal; +begin + RegQueryDWordValue(HKLM, 'Software\Microsoft\NET Framework Setup\NDP\v1.1.4322', 'SP', version); + if version = 1 then begin + RegQueryDWordValue(HKLM, 'Software\Microsoft\Updates\.NETFramework\1.1\M886903', 'Installed', version); + if version <> 1 then + AddProduct('kb886903.exe', + '/q', + CustomMessage('kb886903_title'), + CustomMessage('kb886903_size'), + kb886903_url); + end; +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/kb928366.iss b/Greenshot/releases/innosetup/scripts/products/kb928366.iss new file mode 100644 index 000000000..a354f47cd --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/kb928366.iss @@ -0,0 +1,32 @@ +// WARNING: Windows Update is better because there are different versions for different OS +// (optional) critical security hotfix for .NET Framework 1.1 Service Pack 1 on Windows 2000/XP +// http://support.microsoft.com/?id=928366 +// http://www.microsoft.com/downloads/details.aspx?familyid=281FB2CD-C715-4F05-A01F-0455D2D9EBFB + +[CustomMessages] +en.kb928366_title=.NET Framework 1.1 SP1 Security Update (KB928366) +de.kb928366_title=.NET Framework 1.1 SP1 Sicherheitsupdate (KB928366) + +en.kb928366_size=8.8 MB +de.kb928366_size=8,8 MB + + +[Code] +const + kb928366_url = 'http://download.microsoft.com/download/6/d/0/6d0e5797-91eb-401a-a61f-58b369302018/NDP1.1sp1-KB928366-X86.exe'; + +procedure kb928366(); +var + version: cardinal; +begin + RegQueryDWordValue(HKLM, 'Software\Microsoft\NET Framework Setup\NDP\v1.1.4322', 'SP', version); + if version = 1 then begin + RegQueryDWordValue(HKLM, 'Software\Microsoft\Updates\.NETFramework\1.1\M928366', 'Installed', version); + if version <> 1 then + AddProduct('kb928366.exe', + '/q', + CustomMessage('kb928366_title'), + CustomMessage('kb928366_size'), + kb928366_url); + end; +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/mdac28.iss b/Greenshot/releases/innosetup/scripts/products/mdac28.iss new file mode 100644 index 000000000..9bec59b4d --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/mdac28.iss @@ -0,0 +1,24 @@ +[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 version < MinVersion then + AddProduct('mdac28.exe', + '/q:a /c:"install /qb /l"', + CustomMessage('mdac28_title'), + CustomMessage('mdac28_size'), + mdac28_url); +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/msi20.iss b/Greenshot/releases/innosetup/scripts/products/msi20.iss new file mode 100644 index 000000000..ee5be685b --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/msi20.iss @@ -0,0 +1,21 @@ +[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 maxwinversion(4, 9) and (fileversion(ExpandConstant('{sys}{\}msi.dll')) < MinVersion) then + AddProduct('msi20.exe', + '/q:a /c:"msiinst /delayrebootq"', + CustomMessage('msi20_title'), + CustomMessage('msi20_size'), + msi20_url); +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/msi31.iss b/Greenshot/releases/innosetup/scripts/products/msi31.iss new file mode 100644 index 000000000..7193d3f48 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/msi31.iss @@ -0,0 +1,21 @@ +[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 minwinversion(5, 0) and (fileversion(ExpandConstant('{sys}{\}msi.dll')) < MinVersion) then + AddProduct('msi31.exe', + '/qb /norestart', + CustomMessage('msi31_title'), + CustomMessage('msi31_size'), + msi31_url); +end; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/scripts/products/sql2005express.iss b/Greenshot/releases/innosetup/scripts/products/sql2005express.iss new file mode 100644 index 000000000..b0af614bb --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/sql2005express.iss @@ -0,0 +1,32 @@ +// requires Windows 2000 Service Pack 4, Windows Server 2003 Service Pack 1, Windows XP Service Pack 2 +// SQL Express 2005 Service Pack 1+ should be installed for SQL Express 2005 to work on Vista +// requires windows installer 3.1 +// http://www.microsoft.com/downloads/details.aspx?FamilyID=220549b5-0b07-4448-8848-dcc397514b41 + +[CustomMessages] +sql2005express_title=SQL Server 2005 Express + +en.sql2005express_size=57.7 MB +de.sql2005express_size=57,7 MB + + +[Code] +const + sql2005express_url = 'http://download.microsoft.com/download/f/1/0/f10c4f60-630e-4153-bd53-c3010e4c513b/SQLEXPR.EXE'; + +procedure sql2005express(); +var + version: cardinal; +begin + //CHECK NOT FINISHED YET + //RTM: 9.00.1399.06 + //Service Pack 1: 9.1.2047.00 + //Service Pack 2: 9.2.3042.00 + RegQueryDWordValue(HKLM, 'Software\Microsoft\Microsoft SQL Server\90\DTS\Setup', 'Install', version); + if version <> 1 then + AddProduct('sql2005express.exe', + '/qb', + CustomMessage('sql2005express_title'), + CustomMessage('sql2005express_size'), + sql2005express_url); +end; diff --git a/Greenshot/releases/innosetup/scripts/products/winversion.iss b/Greenshot/releases/innosetup/scripts/products/winversion.iss new file mode 100644 index 000000000..7d3d122b6 --- /dev/null +++ b/Greenshot/releases/innosetup/scripts/products/winversion.iss @@ -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; \ No newline at end of file diff --git a/Greenshot/releases/innosetup/setup.iss b/Greenshot/releases/innosetup/setup.iss index eea689fa3..f5a99e552 100644 --- a/Greenshot/releases/innosetup/setup.iss +++ b/Greenshot/releases/innosetup/setup.iss @@ -1,6 +1,22 @@ #define ExeName "Greenshot" #define Version "0.9.0.$WCREV$" -#define Mutex "F48E86D3-E34C-4DB7-8F8F-9A0EA55F0D08" + +; Mutex is no longer needed! +;#define Mutex "F48E86D3-E34C-4DB7-8F8F-9A0EA55F0D08" + +; Include the scripts to install .NET Framework 2.0 +#include "scripts\products.iss" +#include "scripts\products\winversion.iss" +#include "scripts\products\fileversion.iss" +#include "scripts\products\msi20.iss" +#include "scripts\products\msi31.iss" +#include "scripts\products\dotnetfx20.iss" +#include "scripts\products\dotnetfx20lp.iss" +#include "scripts\products\dotnetfx20sp1.iss" +#include "scripts\products\dotnetfx20sp1lp.iss" +#include "scripts\products\dotnetfx20sp2.iss" +#include "scripts\products\dotnetfx20sp2lp.iss" + [Files] Source: ..\..\bin\Release\*; DestDir: {app}; Flags: overwritereadonly ignoreversion replacesameversion Source: ..\..\bin\Release\Languages\*; DestDir: {app}\Languages; Flags: overwritereadonly ignoreversion replacesameversion @@ -16,6 +32,16 @@ Source: ..\..\bin\Release\Languages\Plugins\Greenshot-OCR-Plugin\*; DestDir: {ap ;Source: ..\..\bin\Release\Languages\Plugins\GreenshotJiraPlugin\*; DestDir: {app}\Languages\Plugins\GreenshotJiraPlugin; Components: plugins\jira; Flags: overwritereadonly ignoreversion replacesameversion; ;Title-Fix Plugin Source: ..\..\bin\Release\Plugins\Greenshot-TitleFix-Plugin\*; DestDir: {app}\Plugins\Greenshot-TitleFix-Plugin; Components: plugins\titlefix; Flags: overwritereadonly recursesubdirs ignoreversion replacesameversion; + +;------ +; Add the "Files In Use Extension" +Source: IssProc\IssProc.dll; DestDir: {tmp}; Flags: dontcopy +; Add Files In Use Extension extra language file (you don t need to add this file if you are using english only) +Source: IssProc\IssProcLanguage.ini; DestDir: {tmp}; Flags: dontcopy +;------ Copy IssProc.dll in your app folder if you want to use it on unistall +Source: IssProc\IssProc.dll; DestDir: {app} +Source: IssProc\IssProcLanguage.ini; DestDir: {app} +;------ [Setup] OutputDir=..\ OutputBaseFilename={#ExeName}-INSTALLER-{#Version} @@ -65,9 +91,6 @@ Name: nl; MessagesFile: compiler:Languages\Dutch.isl [Tasks] Name: startup; Description: {cm:startup} [CustomMessages] -en.dotnetmissing=This setup requires the .NET Framework v2.0.%nDo you want to download the framework now? -de.dotnetmissing=Dieses Programm benötigt Microsoft .NET Framework v2.0.%nWollen Sie das Framework jetzt downloaden? -nl.dotnetmissing=Dit programma heeft Microsoft .NET Framework v2.0. nodig%nWilt u het Framework nu downloaden? en.startup=Start {#ExeName} with Windows start de.startup={#ExeName} starten wenn Windows hochfahrt nl.startup=Start {#ExeName} wanneer Windows opstart @@ -87,22 +110,53 @@ Name: "plugins\ocr"; Description: {cm:ocr}; Types: Full Name: "plugins\titlefix"; Description: {cm:titlefix}; Types: Full ;Name: "plugins\flickr"; Description: "Flickr Plugin"; Types: Full [Code] -function KillGreenshot() : Boolean; +// IssFindModule see http://raz-soft.com/display-english-posts-only/files-in-use-extension-for-inno-setup/ +// IssFindModule called on install +function IssFindModule(hWnd: Integer; Modulename: PAnsiChar; Language: PAnsiChar; Silent: Boolean; CanIgnore: Boolean ): Integer; +external 'IssFindModule@files:IssProc.dll stdcall setuponly'; + +// IssFindModule called on uninstall +function IssFindModuleU(hWnd: Integer; Modulename: PAnsiChar; Language: PAnsiChar; Silent: Boolean; CanIgnore: Boolean ): Integer; +external 'IssFindModule@{app}\IssProc.dll stdcall uninstallonly'; + +// Don't install as long as Greenshot is running +function NextButtonClick(CurPage: Integer): Boolean; var - bMutex : Boolean; - resultCode: Integer; + hWnd: Integer; + sModuleName: String; + sApp: String; + nCode: Integer; begin - bMutex:= True - while bMutex do + Result := true; + if CurPage = wpReady then begin - bMutex:= CheckForMutexes ('Local\{#Mutex}'); - if bMutex = True then - begin - Exec('taskkill.exe', '/F /IM Greenshot.exe', '', SW_HIDE, ewWaitUntilTerminated, ResultCode); - Sleep(1200); + Result := false; + ExtractTemporaryFile('IssProcLanguage.ini'); + hWnd := StrToInt(ExpandConstant('{wizardhwnd}')); + sApp := ExpandConstant('{app}'); + // Check on all Greenshot binary files (plugins, exe & DLL's + sModuleName := sApp + '\{#ExeName}.exe;' + sApp + '\{#ExeName}*.dll;' + sApp + '\*\*.dll;' + sApp + '\*\*.gsp'; + + nCode:=IssFindModule(hWnd, sModuleName, ExpandConstant('{language}'), WizardSilent(), false); + if nCode=1 then begin + if WizardSilent() then begin + while IssFindModule(hWnd, sModuleName, ExpandConstant('{language}'), WizardSilent(), false) = 1 do + begin + Exec('taskkill.exe', '/IM greenshot.exe', '', SW_HIDE, ewWaitUntilTerminated, nCode); + Sleep(1200); + end; + + Result := IssFindModule(hWnd, sModuleName, ExpandConstant('{language}'), WizardSilent(), false) = 0; + end else begin + PostMessage (WizardForm.Handle, $0010, 0, 0); + end; + end else if (nCode=0) or (nCode=2) then begin + Result := true; end; end; - Result := True; + + // Check missing Dependencies + ProductNextButtonClick(CurPage); end; function InitializeSetup(): Boolean; @@ -111,26 +165,46 @@ var NetFrameWorkInstalled : Boolean; MsgBoxResult : Boolean; begin - - NetFrameWorkInstalled := RegKeyExists(HKLM, 'SOFTWARE\Microsoft\.NETFramework\policy\v2.0'); - if NetFrameWorkInstalled = true then begin - KillGreenshot(); - Result := true; - end - else begin - MsgBoxResult := MsgBox(ExpandConstant('{cm:dotnetmissing}'), mbConfirmation, MB_YESNO) = idYes; - Result := false; - if MsgBoxResult = true then - begin - ShellExec('open', 'http://download.microsoft.com/download/5/6/7/567758a3-759e-473e-bf8f-52154438565a/dotnetfx.exe', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode); + // Enhance installer otherwise .NET installations won't work + msi20('2.0'); + msi31('3.0'); + + //install .netfx 2.0 sp2 if possible; if not sp1 if possible; if not .netfx 2.0 + if minwinversion(5, 1) then begin + dotnetfx20sp2(); + dotnetfx20sp2lp(); + end else begin + if minwinversion(5, 0) and minwinspversion(5, 0, 4) then begin + // kb835732(); + dotnetfx20sp1(); + dotnetfx20sp1lp(); + end else begin + dotnetfx20(); + dotnetfx20lp(); end; end; + Result := true; end; -function InitializeUninstall():Boolean; +function InitializeUninstall(): Boolean; +var + sModuleName: String; + nCode: Integer; + sApp: String; begin - KillGreenshot(); - Result := True; + Result := false; + sApp := ExpandConstant('{app}'); + + // Check on all Greenshot binary files (plugins, exe & DLL's + sModuleName := sApp + '\{#ExeName}.exe;' + sApp + '\{#ExeName}*.dll;' + sApp + '\*\*.dll;' + sApp + '\*\*.gsp'; + + nCode:=IssFindModuleU(0, sModuleName, 'enu', false, false); + if (nCode=0) then begin + Result := true; + end; + + // Unload the extension, otherwise it will not be deleted by the uninstaller + UnloadDLL(ExpandConstant('{app}\IssProc.dll')); end; [Run] Filename: {app}\{#ExeName}.exe; Description: {cm:startgreenshot}; Parameters: --configure Ui_Language={language}; WorkingDir: {app}; Flags: nowait postinstall runasoriginaluser