HowTo : Réaliser un installeur d'appli Paradox 10 - V2.0

-=ET=-
Messages : 30
Enregistré le : jeu. mars 27, 2003 11:10 am

HowTo : Réaliser un installeur d'appli Paradox 10 - V2.0

Message par -=ET=- » sam. mars 29, 2003 5:16 pm

--------------------------------------------------------------------------------------------------------
Remerciements
--------------------------------------------------------------------------------------------------------

Un grand merci à Jacques Chaillot, Tom Krieg, Debbie, Alex, Nico57, antp, Harkonnen, Bertil Isberg, Uncle Fano, Jordan Russel, PH, et tous ceux que j'oublie pour toutes les infos qu'ils ont posté de ci de là et qui m'ont permis de constituer ce HowTo.
Merci aussi à Côme pour son forum qui constitue une bonne initiative même si pour l'instant il n'y a pas encore foule ;-)

Remarque : ce document étant régulièrement remis à jour grâce à vos infos, merci de ne pas hésiter à le commenter abondamment, et notamment si vous trouvez des erreurs ou avez des commentaires à faire. Toute remarque constructive est toujours bonne à prendre.


--------------------------------------------------------------------------------------------------------
Préambule
--------------------------------------------------------------------------------------------------------

Programmer des applications sous Paradox c'est bien, mais pouvoir les distribuer sans 10 pages de guide d'installation pour s'assurer que le futur utilisateur aura bien réalisé toutes les opérations requises, ou sans déplacer un tech pour si peu c'est mieux !
Et ça devient même quasi impératif quand on vend ses applications au grand public à qui on ne peut pas demander de mettre les mains dans le cambouis :roll:

Dès lors, la réalisation d'un installeur qui se chargera de l'ensemble des opérations devient une nécessité. Malheureusement, en la matière la version 10 de Paradox constitue une véritable régression fonctionnelle. En effet, depuis que Borland et Corel distribuent des runtimes, ceux-ci ont toujours été livrés avec un installeur capable d'installer à la fois le runtime certes, mais aussi une application personnalisée. C'était soit l'installeur du runtime lui-même qui s'en chargeait (comme en V5), soit un logiciel spécialisé type InstallShield Express livré avec la version developper (comme il y a peu encore, en V9). Or ce n'est plus le cas aujourd'hui. Plus aucun outil n'est livré par Corel avec Paradox pour réaliser une installation complète :-(

Du coup, ce constat fait, il ne nous reste plus qu'à trouver la meilleur solution de remplacement possible, et c'est donc précisément l'objet de ce HowTo : vous proposer une solution professionnelle, fiable, gratuite et multilingue pour réaliser des installeurs pour nos applications :-)


--------------------------------------------------------------------------------------------------------
Réalisation d'un installeur pour une application Paradox 10
--------------------------------------------------------------------------------------------------------

Critères de choix de l'installeur :
- Tout le monde en conviendra aisément, toujours devoir mettre la main au porte monnaie c'est agaçant à la longue. En clair, s'il peut être gratuit c'est pas plus mal.
- Ensuite, Paradox 10 tournant sur tous les Windows de 95 OSR2 à Me et de NT 4.0 SP-6 à XP, il nous faut un installeur capable de faire de même.
- Puis, comme on est un certain nombre à programmer des applications multilingues, l'installeur doit l'être aussi.
- Par ailleurs, il doit évidement pouvoir prendre en charger l'installation et la désinstallation du runtime (en plus de notre application).
- Et enfin, il doit être suffisamment puissant pour permettre un minimum d'opérations indispensables à la réalisation d'une bonne installation (dont l'installation d'icônes un peu partout, de polices de caractères, la création de fichiers ini, la lecture/écriture dans la base de registre, l'exécution de programmes externes, le recueil d'informations sur l'utilisateur, un test de la présence d'un runtime P10 déjà installé, de la version de Windows, de l'espace disque disponible, des droits de l'utilisateur, etc., etc.).

Et...
Miracle... un logiciel a finalement répondu avec brio à tous ces critères :mrgreen:
Il s'agit d'Inno Setup 4 de Jordan Russell Image


1. Installation d'Inno Setup (IS)
IS est un Freeware ; y compris s'il est utilisé pour des applications commerciales !
Cependant, comme toujours si au final vous décidez de l'utiliser (surtout dans le cadre d'applications commerciales) et appréciez ses qualités, je vous encourage quand même à aider son auteur en donnant une somme à votre libre appréciation ici.

Mais revenons au logiciel.
C'est vraiment le produit rêvé : il tourne sur tous les Windows 32 bits (de 95 à XP), gère l'installation et la désinstallation des produits installés, crée des .exe uniques (utile pour mettre en téléchargement), peut réaliser toutes les opérations souhaitées en introduction, et est vraiment TRES simple d'emploi Image

1.1 Installation d' IS 4.0.1
Vous pouvez télécharger le logiciel ici.
Pour l'installer, rien de particulier. Double cliquez sur le fichier téléchargé et suivez les instructions.

1.2 Téléchargement de la langue des futurs installeurs (le français par exemple)
Par défaut, IS crée des installeurs en anglais. Néanmoins, si vous voulez que votre installeur (pas IS lui-même) soit dans une autre langue, ou même carrément multilingue (en rajoutant le français par exemple), vous devez télécharger des fichiers de traductions ici.

Remarque : attention à bien prendre les fichiers de traduction dans la version la plus proche de celle d'IS. Par exemple, pour IS 4.0.1, prendre une traduction française 4.0.0


2. Mise en place de l'environnement de travail
Etant donné que pas mal de fichiers vont être concernés par la création de cet installeur, un peu de méthode ne peut pas faire de mal.
Aussi je vous suggère un contexte et une arborescence pour y voir clair ;-)

2.1 Le contexte de création de l'installeur
A partir de maintenant et pour la suite de ce HowTo, je vais prendre l'exemple d'une application que j'ai réalisé sur Paradox. C'est juste pour clarifier le propos en évitant les longues tentatives de description de ce qu'il faudrait mettre un peu partout.

Cette application s'appelle "Golf Expert", est actuellement en version 2.0, pour l'instant en français/anglais et consiste à réaliser l'analyse chiffrée de parties de golf. Pour cela des cartes de saisie de score spéciales réalisées sur Acrobat peuvent avoir à être imprimées.
Voilà. Ce sont les seules informations utiles pour comprendre la programmation de l'installeur.

2.2 Créer l'arborescence de travail
Pour ne pas tout mélanger, une arborescence propre s'impose.
Je vous suggère celle-ci (en vous rappelant que dorénavant tout sera mis en œuvre dans le cadre d'un installeur multilingue français/anglais)...

X:\...\CD Golf Expert 2
..............|__Golf Expert
..............|....|__Exe
..............|....|__Fonts
..............|....|__Help
..............|....|__Icon
..............|....|__Images
..............|....|__Ini
..............|....|__Licences
..............|....|__Priv_db
..............|__Racine CD
...................|__AcroRead
........................|__English
........................|__Francais
...................|__Autorun
...................|__Cards
........................|__English
........................|__Francais
...................|__Pdox10Run

L'utilisation d'adressage relatif fait que le nommage du chemin jusqu'au nom du répertoire de travail n'a pas d'importance (X:\...\CD Golf Expert 2). Vous pouvez mettre ce répertoire où vous voulez et lui donner le nom que vous voulez.

Dans la racine de ce répertoire, vous mettrez les fichiers de traduction téléchargés (.isl) et le script de création de l'installeur une fois que nous l'aurons créé.

Le répertoire "Golf Expert" accueillera lui dans sa racine l'ensemble des fichiers de l'application (fiches, états et librairies distribués évidement), SAUF, les tables susceptibles d'être modifiées, enrichies par les utilisateurs de l'application et pour lesquels vous ne voudriez en aucun cas qu'elles soient écrasées si l'utilisateur venait à faire une réinstallation. Ces fichiers particuliers (si vous en avez) doivent aller dans le sous-répertoire "Priv_db" pour faire l'objet d'un contrôle avant leur éventuel transfert dans leur répertoire d'installation.

Remarque : le choix de l'anglais pour les noms des sous-répertoires est personnel. Vous faites bien ce que vous voulez ;-)

Les autres sous répertoires servent ensuite à classer les fichiers nécessaires à l'installation ou au fonctionnement de l'application mais qui ne sont ni des fichiers Paradox, ni des fichiers devant figurer en clair sur le CD-Rom. En effet, pour éviter les doublons, on placera ces derniers de préférence directement dans la structure du CD.

\Exe = fichiers exécutables. Personnellement j'en utilise 3 : deux affichant le message d'avertissement avant désinstallation du RT (en français ou en anglais), et un nécessaire à la protection de Golf Expert mais là c'est secret défense ! lol ;-)
\Fonts = police de caractères personnalisée propre à Golf Expert (si, si, j'en ai une)
\Help = fichiers d'aide de Golf Expert (.hlp/.cnt)
\Icon = icône utilisé pour les raccourcis Golf Expert et le désinstalleur
\Images = splash screen personnalisé pour Golf Expert et images de personnalisation de l'installeur
\Ini = fichier INI servant à paramétrer le lancement du runtime
\Licences = fichiers contenant les accords de licence de Golf Expert en français et en anglais
\Priv_db = tables ne devant pas être réinstallées si elle le sont déjà

Le répertoire "Racine CD" doit quant à lui recevoir la structure et les fichiers du futur CD, tels qu'ils pourront être directement gravés.

Dans la racine de ce répertoire on trouvera donc les fichiers des notes de version dans toutes les langues (donc "LisezMoi.txt" & "ReadMe.txt" dans le cas présent), le futur fichier "Install.exe" et le fichier "Autorun.inf" que l'on verra en fin de HowTo.
Les notes de version doivent toujours être lisibles en clair sans installation préalable pour pouvoir donner des consignes avant installation.

Dans le sous répertoire "\AcroRead" on trouvera les versions d'Acrobat Reader (une par langue).

Dans le sous répertoire "\Autorun" on trouvera les fichiers nécessaires à la fonction d'Autorun (cf. plus bas dans le HowTo).

Dans le sous répertoire "\Cards" on trouvera les cartes de saisies de score spéciales de Golf Expert (classées par langues)

Et enfin dans le sous répertoire "\Pdx10Run" on mettra le runtime Paradox 10.


2.3 Transférer les fichiers
Cette arborescence créée, vous pouvez maintenant la remplir en transférant dedans la copie de tous vos fichiers nécessaires.

Vous trouverez les Acrobat Reader 5.05 dans chaque langue en libre téléchargement sur le site Web d'Adobe ici.
La version 5.05 est la plus appropriée car elle est la plus récente à fonctionner sur toute l'étendue de la plage de fonctionnement de Paradox 10. Depuis la version 5.1, Windows 95 n'est plus supporté :-(

Vous trouverez enfin le runtime Paradox 10 en libre téléchargement sur le site FTP de Corel ici.


3. Rédaction du script de l'installeur
Et voilà. Cette fois-ci on commence... :D

Créez tout d'abord un script vierge correctement nommé et enregistré dans la racine de votre répertoire de travail.

Pour ce faire :
- lancez IS,
- cliquez sur "File", puis "New",
- cliquez sur "Create a new empty script file", puis "Next" et "Finish",
- cliquez sur "File", puis "Save",
- pointez le dossier " X:\...\CD Golf Expert 2",
- nommez le script "Script Golf Expert" et cliquez sur "Enregistrer".

N'utilisez pas le Wizard car il ne vous apportera rien de plus que les explications ci-dessous.

A partir de là, on peut débuter la rédaction du script.
Cependant et pour faire simple, je vous propose de télécharger le mien pour vous permettre dans un premier temps de n'avoir qu'à l'adapter et ainsi éviter des erreurs de recopie ou de copier/coller malheureux depuis cette page HTML.
Je vous mets donc mon script en téléchargement ici.

Enfin, avant de commencer, voilà aussi ce qu'il faut savoir :
- L'installation du runtime 10 peut être paramétrée en ligne de commande pour qu'elle se fasse sans poser la moindre question, ni proposer de validation.
Paramétrage : "Pdx10Run.exe /q INSTALLDIR="..." /I"
- Elle peut aussi se faire en paramétrant le répertoire d'installation (cf. ci-dessus).
- Comme le runtime a déjà un installeur qui ne peut pas prendre en charge l'installation d'une application, c'est l'inverse qui va être fait : c'est l'installeur de l'application qui va s'occuper de tout ; y compris de lancer l'installeur du runtime.
- Pour laisser le choix de la destination de l'installation complète (runtime & appli), si le runtime doit être installé il le sera dans un sous répertoire de l'application.
Sinon, il aurait fallu demander 2 destinations (ce qui serait possible mais à programmer), ou laisser le runtime s'installer sur une destination fixée d'avance (donc forcement sur le C car on ne peut pas être sûr qu'il y ait d'autres partitions) ce qui pourrait poser problème dans certain cas, notamment si le C était plein ou inaccessible.
Si vous tenez absolument à laisser le choix de l'emplacement pour le RT, consultez ce HowTo.
- En revanche, le runtime ne sera pas forcement installé. Si un runtime Paradox 10 (et éventuellement même un Paradox 10 complet) s'avère déjà installé sur le PC, l'installeur de l'application ne procèdera pas à une nouvelle installation car l'installeur propre au runtime aurait refusé d'installer à nouveau le RT dans le nouveau répertoire désigné.
- Côté désinstallation éventuelle du runtime, elle sera elle aussi lancée par le désinstalleur de l'application, avec une demande de confirmation à l'utilisateur.
- Pour ce faire, j'ai dû programmer un tout petit fichier exe faisant afficher une boite de dialogue informant l'utilisateur avant la demande de confirmation de la désinstallation du runtime. C'est la SEULE chose qu'IS ne savait pas faire car ses scripts ne s'appliquent pas à la phase de désinstallation ; et hors script il n'existe pas de fonctionnalité permettant de faire afficher une boite de dialogue personnalisée.
Ce petit exe fait 2,5Ko et a été programmé sur MASM32 V8.

Voilà.
Et maintenant passons au contenu du script...

Section [Setup]
= paramétrages généraux

; Nom de l'application (obligatoire)
AppName=Golf Expert

; Nom de l'application avec numéro de version (obligatoire)
AppVerName=Golf Expert 2.0

; Nom de l'éditeur de l'appli pour la fenêtre "Ajout/Suppression de programme"
AppPublisher=Xxxxxxxxxxx

; Adresse du site de l'éditeur pour la fenêtre "Ajout/Suppression de programme"
AppPublisherURL=http://www.golfexpert.net

; Adresse de la page du support de l'éditeur pour la fenêtre "Ajout/Suppression de programme"
AppSupportURL=http://www.golfexpert.net/support

; Adresse de la page des mises à jour pour la fenêtre "Ajout/Suppression de programme"
AppUpdatesURL=http://www.golfexpert.net/download

; Nom du mutex de l'application dont l'absence est à vérifier avant de lancer l'install
; Cf. annexe pour le code ObjectPal à placer pour sa création

AppMutex=GolfExpert

; Nom du répertoire d'installation par défaut dans "Program Files" (obligatoire)
; {pf} = chemin d'accès au répertoire "Program Files"

DefaultDirName={pf}\Golf Expert

; Nom du groupe dans le menu Démarrer>Programmes
DefaultGroupName=Golf Expert

; Vérifie que l'espace disque soit suffisant : 50Mo pour le runtime Paradox 10
; quant à Acrobat Reader il lui faut 24Mo, mais il utilisera les 25/30Mo aloués en fait aux fichiers
; temporaires d'installation du runtime et qui seront libérés avant l'install d'Acrobat

ExtraDiskSpaceRequired=52428800

; Version minimum de Windows 9x ou Windows NT pour démarrer l'installation
; 4.0.1111=min 95 OSR2 et 4.0sp6=min NT 4.0 SP-6 en techno NT
; Ce paramétrage correspond à Paradox 10 (cf. aide pour plus de détails)

MinVersion=4.0.1111,4.0sp6

; Nom du fichier de l'installeur a créer - "Install" est plus international que "Setup"
OutputBaseFilename=Install

; Nom du sous-répertoire dans lequel sera créé l'exe de l'installeur
OutputDir=Racine CD

; Droits minimum nécessaires pour lancer l'installation (le RT10 requiert des droits d'administrateur sous NT/2000/XP)
PrivilegesRequired=admin

; Indication que l'on veut créer un installeur multilingue avec fenêtre de choix de la langue
ShowLanguageDialog=Yes

; Utilisation d'une compression globale des fichiers (taux de compression meilleur)
; et de l'algorithme de compression bzip2 plus performant que le zip par défaut

SolidCompression=Yes
Compression=bzip

; Emplacement de l'icône qui servira pour personnaliser l'appli dans "Ajout/Suppression de programme"
; {App} = chemin du répertoire d'installation de l'application - cf. ci-dessus

UninstallDisplayIcon={app}\icon\Golf_Exp.ico

; Demande de faire afficher une fenêtre de saisie d'infos perso (Nom+organisation)
UserInfoPage=Yes

; Ne pas faire afficher d'infos perso récupérées sur l'install d'autres logiciels
UsePreviousUserInfo=No
DefaultUserInfoName=
DefaultUserInfoOrg=

; Emplacement d'une image personnalisée à afficher sur le 1er et dernier écran de l'installeur
; L'image doit être en 256 couleurs max sur 164x314 pixels

WizardImageFile=Golf Expert\images\Golfeur.bmp


Section [Languages]
= section de paramétrage des langues à utiliser (1 ligne par langue)

; Mention des langues à utiliser avec pour chacune :
; - le fichier de traductions téléchargé sur le site d'Inno Setup (cf. plus haut),
; - si besoin, un fichier de traductions personnalisées de certains libellés qui s'imposeront
; sur les traductions par défaut (le .isl placé en dernier s'impose sur les précédents)
; - et le fichier texte de l'accord de licence dans la bonne langue.

Name: "en"; MessagesFile: "compiler:Default.isl,Msg-GolfExpert-en.isl"; LicenseFile: "Golf Expert\licences\Licen_en.txt"
Name: "fr"; MessagesFile: "French-x-4.0.1.isl,Msg-GolfExpert-fr.isl"; LicenseFile: "Golf Expert\licences\Licen_fr.txt"


Section [Messages]
= section de libellés devant s'imposer sur les traductions de TOUTES les langues

; Ces 2 libellés me servent pour la 1ère fenêtre, avant la sélection de la langue pour remplacer
; le titre de la fenêtre de sélection par le nom de l'appli (commun à toutes les langues),
; et passer le libellé de la liste déroulante en 2 langues (c'est toujours mieux qu'une)

SelectLanguageTitle=Golf Expert
SelectLanguageLabel=Sélectionnez la langue à utiliser durant l'installation / Select the language to use during the installation:


Section

Code : Tout sélectionner

 [/b]
= section de création de fonctions personnalisées (en Innerfuse Pascal Script)

[color=green]En vert[/color] : on trouve les lignes de commentaires (comme dans l'ensemble du script)
[color=darkblue]En bleu[/color] : on trouve les lignes à valider pour le contrôle supplémentaire de la présence de Paradox (en plus du RT), ce que je n'ai pas retenu par défaut. Pour valider une ligne, enlever le ";" ou les "//" pour les lignes de la section [Code].
[color=darkred]En rouge[/color] : on trouve les lignes à valider pour créer un installeur sur un seul fichier (à mettre en téléchargement), plutôt qu'avec des fichiers séparés pour un CD-Rom (code par défaut). Attention, les lignes rouges sont à valider, mais des lignes en noire sont aussi à invalider (cf. commentaires).

[color=green]// Déclaration des variables[/color]
var
  Chemin: string;
  Chemin1: string;
  Chemin2: string;

  Quest_Pdox10_posee: boolean;
  Rep_Pdox10: boolean;

  Quest_Acrobat_posee: boolean;
  Rep_utilisateur: integer;
  Rep_Acrobat: boolean;

[color=green]// Fonction de validation de l'install d'un runtime Paradox 10 avec msg (install & désintall) [/color]
function OK_RTP10(): boolean;
begin
	if not Quest_Pdox10_posee then begin
    Quest_Pdox10_posee:= true;
    Chemin1 := '';
    Chemin2 := '';
[color=darkblue]//    RegQueryStringValue(HKLM,'SOFTWARE\Corel\Paradox\10.0\Configuration\Paradoxdir', '', Chemin1 ); [/color]
    RegQueryStringValue(HKLM, 'SOFTWARE\Corel\Paradox Runtime\10.0\Configuration\Paradoxdir', '', Chemin2 );
    Chemin := Chemin1+Chemin2 ;
    if ( Chemin <> '' ) then begin
      result := False;  // = on n'installe pas - Paradox et/ou runtime présent
  		case ActiveLanguage of
  		  'fr':
[color=green]//        !!! Pour un installeur en version 1 seul fichier, passez les // sur la 2nd ligne ci-dessous !!! [/color]
[color=green]//        !!! --------------------------------------------------------------------------------------- !!! [/color]
[color=darkred]//          MsgBox('L''installation de Golf Expert va maintenant commencer.' #13 'En revance, comme un runtime Paradox 10 est déjà installé sur votre ordinateur celui livré avec Golf Expert ne sera pas installé.', mbInformation, MB_OK); [/color]
          MsgBox('Le runtime Paradox 10 livré avec Golf Expert n''a pas été installé.' #13 'En effet, une version de ce runtime est déjà installée sur votre ordinateur et sera utilisée.', mbInformation, MB_OK);
[color=green]//        !!! --------------------------------------------------------------------------------------- !!! [/color]
        'en':
[color=green]//        !!! Pour un installeur en version 1 seul fichier, passez les // sur la 2nd ligne ci-dessous !!! [/color]
[color=green]//        !!! --------------------------------------------------------------------------------------- !!! [/color]
[color=darkred]//          MsgBox('The setup of Golf Expert will now start.' #13 'But, because a Paradox 10 runtime is already install on your PC, the one provide with Golf Expert will not be installed.', mbInformation, MB_OK); [/color]
          MsgBox('The Paradox 10 runtime provide with Golf Expert has not been installed.' #13 'Indeed, a copy of this runtime is already installed on your PC and will be used.', mbInformation, MB_OK);
[color=green]//        !!! --------------------------------------------------------------------------------------- !!! [/color]
      end;
    end else begin
      result := True;   // = on installe - Paradox et/ou runtime pas présent
    end;
    Rep_Pdox10 := result;
  end else begin
    result := Rep_Pdox10;
  end;
end;

[color=green]// Fonction de validation de l'install d'Acrobat Reader 5.05 avec demande de choix[/color]
function OK_Acrobat(): boolean;
begin
	if not Quest_Acrobat_posee then begin
    Quest_Acrobat_posee := true;
    Chemin1 := '';
    Chemin2 := '';
    RegQueryStringValue(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\Acrobat.exe', '', Chemin1 );
    RegQueryStringValue(HKLM, 'SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\Acrord32.exe', '', Chemin2 );
    Chemin := Chemin1+Chemin2 ;
    if ( Chemin = '' ) then begin
  		case ActiveLanguage of
  		  'fr':
          Rep_utilisateur := MsgBox('Pour imprimer les cartes détaillées de Golf Expert, il est nécessaire qu''Acrobat Reader soit installé. Or, aucune version de ce logiciel n''a été détectée sur votre PC.' #13 'Voulez vous installer Acrobat Reader 5.05 ?', mbInformation, MB_YESNO);
		    'en':
          Rep_utilisateur := MsgBox('To print the Golf Expert detailed cards, Acrobat Reader must be installed. Unfortunately no copy of this software has been detected on your PC.' #13 'Do you want to install Acrobat Reader 5.05 ?', mbInformation, MB_YESNO);
		  end;
      if Rep_utilisateur = idYes
      then begin
        result := True;     // = on installe
      end else begin
        result := False;    // = on n'installe pas - l'utilisateur ne veut pas
      end;
		end else begin
      result := False;      // = on n'installe pas - Acrobat et/ou Reader déjà présent
    end;
    Rep_Acrobat := result;
  end else begin
    result := Rep_Acrobat;
  end;
end;


[b]Section [Tasks] [/b]
= paramétrage de taches complémentaires à sélectionner

[color=green]; Création d'un icône sur le bureau[/color]
Name: "desktopicon"; Description: "Créer un icône sur le &bureau"; GroupDescription: "Icône(s) supplémentaire(s) :"; Languages: fr
Name: "quicklaunchicon"; Description: "Créer un icône dans la barre de &lancement rapide"; GroupDescription: "Icône(s) supplémentaire(s) :"; Flags: unchecked; Languages: fr

[color=green]; Création d'un icône dans la barre de lancement rapide (non coché par défaut) [/color]
Name: "desktopicon"; Description: "Create a &desktop icon"; GroupDescription: "Additional icons:"; Languages: en
Name: "quicklaunchicon"; Description: "Create a &Quick Launch icon"; GroupDescription: "Additional icons:"; Flags: unchecked; Languages: en


 [b]Section [Icons] [/b]
= création des raccourcis (icônes)

[color=green]; création du raccourci dans le groupe de programme
; grâce au flag "createonlyiffileexists" le 2nd raccourci écrasera le 1er si un runtime 10 est installé
; Un double guillemet sert à signifier un caractère guillemet au sein d'une chaîne
; Les lignes invalidées ne servent que si vous choisissez de tester aussi Paradox[/color]
Name: "{group}\Golf Expert 2.0"; Filename: "{app}\runtime\Programs\pdxrwn32.exe"; WorkingDir: "{app}\runtime\Programs"; Parameters: "-c -i PFWWIN.INI -w ""{app}"" GOLF.FDL"; IconFilename: "{app}\icon\Golf_Exp.ico"
Name: "{group}\Golf Expert 2.0"; Filename: "{reg:HKLM\SOFTWARE\Corel\Paradox Runtime\10.0\Configuration\ParadoxDir,}\..\Programs\pdxrwn32.exe"; WorkingDir: "{reg:HKLM\SOFTWARE\Corel\Paradox Runtime\10.0\Configuration\ParadoxDir,}\..\Programs" ; Parameters: "-c -i PFWWIN.INI -w ""{app}"" GOLF.FDL"; IconFilename: "{app}\icon\Golf_Exp.ico"; Flags: createonlyiffileexists 
[color=darkblue]; Name: "{group}\Golf Expert 2.0"; Filename: "{reg:HKLM\SOFTWARE\Corel\Paradox\10.0\Configuration\ParadoxDir,}\..\Programs\pdxwin32.exe"; WorkingDir: "{reg:HKLM\SOFTWARE\Corel\Paradox\10.0\Configuration\ParadoxDir,}\..\Programs" ; Parameters: "-c -i PFWWIN.INI -w ""{app}"" GOLF.FDL"; IconFilename: "{app}\icon\Golf_Exp.ico"; Flags: createonlyiffileexists[/color]

[color=green]; création des raccourcis vers le fichier de notes de version et le site web dans le groupe de programme[/color]
Name: "{group}\Release notes"; Filename: "{app}\readme\ReadMe.txt"; Languages: en
Name: "{group}\Notes de version"; Filename: "{app}\readme\LisezMoi.txt"; Languages: fr
Name: "{group}\Golf Expert"; Filename: "{app}\GolfExpert.url"

[color=green]; création du raccourci sur le bureau (si demandé) [/color]
Name: "{userdesktop}\Golf Expert 2.0"; Filename: "{app}\Runtime\Programs\pdxrwn32.exe"; WorkingDir: "{app}\runtime\Programs"; Parameters: "-c -i PFWWIN.INI -w ""{app}"" GOLF.FDL"; IconFilename: "{app}\icon\Golf_Exp.ico"; Tasks: desktopicon
Name: "{userdesktop}\Golf Expert 2.0"; Filename: "{reg:HKLM\SOFTWARE\Corel\Paradox Runtime\10.0\Configuration\ParadoxDir,}\..\Programs\pdxrwn32.exe"; WorkingDir: "{reg:HKLM\SOFTWARE\Corel\Paradox Runtime\10.0\Configuration\ParadoxDir,}\..\Programs" ; Parameters: "-c -i PFWWIN.INI -w ""{app}"" GOLF.FDL"; IconFilename: "{app}\icon\Golf_Exp.ico"; Tasks: desktopicon; Flags: createonlyiffileexists
[color=darkblue]; Name: "{userdesktop}\Golf Expert 2.0"; Filename: "{reg:HKLM\SOFTWARE\Corel\Paradox\10.0\Configuration\ParadoxDir,}\..\Programs\pdxwin32.exe"; WorkingDir: "{reg:HKLM\SOFTWARE\Corel\Paradox\10.0\Configuration\ParadoxDir,}\..\Programs" ; Parameters: "-c -i PFWWIN.INI -w ""{app}"" GOLF.FDL"; IconFilename: "{app}\icon\Golf_Exp.ico"; Tasks: desktopicon; Flags: createonlyiffileexists[/color]

[color=green]; création du raccourci dans la barre de lancement rapide (si demandé) [/color]
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\Golf Expert 2.0"; Filename: "{app}\Runtime\Programs\pdxrwn32.exe"; WorkingDir: "{app}\runtime\Programs"; Parameters: "-c -i PFWWIN.INI -w ""{app}"" GOLF.FDL"; IconFilename: "{app}\icon\Golf_Exp.ico"; Tasks: quicklaunchicon
Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\Golf Expert 2.0"; Filename: "{reg:HKLM\SOFTWARE\Corel\Paradox Runtime\10.0\Configuration\ParadoxDir,}\..\Programs\pdxrwn32.exe"; WorkingDir: "{reg:HKLM\SOFTWARE\Corel\Paradox Runtime\10.0\Configuration\ParadoxDir,}\..\Programs" ; Parameters: "-c -i PFWWIN.INI -w ""{app}"" GOLF.FDL"; IconFilename: "{app}\icon\Golf_Exp.ico"; Tasks: quicklaunchicon; Flags: createonlyiffileexists 
[color=darkblue]; Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\Golf Expert 2.0"; Filename: "{reg:HKLM\SOFTWARE\Corel\Paradox\10.0\Configuration\ParadoxDir,}\..\Programs\pdxwin32.exe"; WorkingDir: "{reg:HKLM\SOFTWARE\Corel\Paradox\10.0\Configuration\ParadoxDir,}\..\Programs" ; Parameters: "-c -i PFWWIN.INI -w ""{app}"" GOLF.FDL"; IconFilename: "{app}\icon\Golf_Exp.ico"; Tasks: quicklaunchicon; Flags: createonlyiffileexists[/color]


[b]Section [INI] [/b]
= création de fichiers à l'installation (pas seulement des ".ini")

[color=green]; création d'un fichier raccourci vers le site web pour un icône[/color]
Filename: "{app}\GolfExpert.url"; Section: "InternetShortcut"; Key: "URL"; String:http://www.golfexpert.net

[color=green]; création et enrichissement d'un fichier ini avec les infos perso saisies et la langue pour récupération par Golf Expert[/color]
Filename: "{app}\ini\instpers.ini"; Section: "InfosSaisies"; Key: "Utilisateur"; String: {userinfoname}
Filename: "{app}\ini\instpers.ini"; Section: "InfosSaisies"; Key: "Organisation"; String: {userinfoorg}
Filename: "{app}\ini\instpers.ini"; Section: "InfosSaisies"; Key: "Langue"; String: {language}


[b]Section [Registry] [/b]
= création d'entrées dans la base de registre

[color=green]; Paramétrage de l'image à afficher pendant le lancement du runtime et de la fiche principale[/color]
Root: HKCU; Subkey: "SOFTWARE\COREL\PARADOX RUNTIME\10.0\CONFIGURATION"; ValueType: string; ValueName: "MyOwnSplashScreen"; ValueData: "{app}\images\Golf Expert.gif"

 [color=green] ; Solution alternative au "WorkingDir" dans les paramètres des raccourcis Golf Expert
; Root: HKCU; Subkey: "SOFTWARE\COREL\PARADOX RUNTIME\10.0\CONFIGURATION\WORKDIR"; ValueType: string; ValueName: ""; ValueData: "{app}"[/color]


[b]Section [Files] [/b]
= paramétrage des fichiers à copier, de l'installation de la police et désignation du fichier LisezMoi

[color=green]; copie des fichiers de l'application[/color]
Source: "Golf Expert\*.*"; DestDir: "{app}"; Flags: ignoreversion

[color=green]; copie des bases personnelles seulement si elles n'existent pas
; par ailleurs elles ne seront pas effacées en cas de désinstallation (cf. flags)[/color]
Source: "Golf Expert\priv_db\*.*"; DestDir: "{app}"; Flags: onlyifdoesntexist uninsneveruninstall

[color=green]; Copie de tous les autres fichiers dans le répertoire d'installation.
; On peut faire plus sélectif mais personnellement j'aime bien que tout 
; soit transféré et disponible pour le support à distance au cas ou.[/color]
Source: "Golf Expert\exe\*.*"; DestDir: "{app}\exe"; Flags: ignoreversion
Source: "Golf Expert\fonts\*.*"; DestDir: "{app}\fonts"; Flags: ignoreversion
Source: "Golf Expert\help\*.*"; DestDir: "{app}\help"; Flags: ignoreversion
Source: "Golf Expert\icon\*.*"; DestDir: "{app}\icon"; Flags: ignoreversion
Source: "Golf Expert\images\Golf Expert.gif"; DestDir: "{app}\images"; Flags: ignoreversion
Source: "Golf Expert\ini\*.*"; DestDir: "{app}\ini"; Flags: ignoreversion
Source: "Golf Expert\licences\*.*"; DestDir: "{app}\licences"; Flags: ignoreversion

[color=green]; copie du fichier "pfwwin.ini" dans le répertoire Windows ({win} = rép. de Windows)[/color]
Source: "Golf Expert\ini\pfwwin.ini"; DestDir: "{win}"; Flags: ignoreversion

[color=green]; Installation de la police Golf Expert[/color]
Source: "Golf Expert\fonts\Golf.ttf"; DestDir: "{fonts}"; FontInstall: "Golf expert"; Flags: onlyifdoesntexist uninsneveruninstall

[color=green]; copie des fichiers figurant dans la racine du CD-Rom[/color]
[color=green]; !!! Pour un installeur en version 1 seul fichier, mettez des ; aux lignes ci-dessous !!!
; !!! ----------------------------------------------------------------------------------- !!! [/color]
Source: "{src}\*.txt"; DestDir: "{app}\readme"; Flags: ignoreversion external
Source: "{src}\cards\English\*.*"; DestDir: "{app}\cards"; Flags: ignoreversion external
Source: "{src}\cards\Francais\*.*"; DestDir: "{app}\cards"; Flags: ignoreversion external
[color=green]; !!! ----------------------------------------------------------------------------------- !!! [/color]

[color=green]; !!! Pour un installeur en version 1 seul fichier, enlevez tous les ; des lignes ci-dessous !!!
; !!! ----------------------------------------------------------------------------------- !!![/color]
[color=darkred]; Source: "Racine CD\*.txt"; DestDir: "{app}\readme"; Flags: ignoreversion
; Source: "Racine CD\cards\English\*.*"; DestDir: "{app}\cards"; Flags: ignoreversion
; Source: "Racine CD\cards\Francais\*.*"; DestDir: "{app}\cards"; Flags: ignoreversion
; Source: "Racine CD\Pdx10Run\Pdx10Run.exe"; DestDir: "{tmp}"; Flags: ignoreversion; Check: OK_RTP10
; Source: "Racine CD\AcroRead\English\rp505enu.exe"; DestDir: "{tmp}"; Flags: ignoreversion; Check: OK_Acrobat; Languages: en
; Source: "Racine CD\AcroRead\Francais\rp505fra.exe"; DestDir: "{tmp}"; Flags: ignoreversion; Check: OK_Acrobat; Languages: fr[/color]
[color=green]; !!! ----------------------------------------------------------------------------------- !!! [/color]


 [b]Section [Run] [/b]
= lancement de programmes externe en fin d'installation (mais avant son  achèvement)

[color=green]; Installation du runtime si validé par la fonction OK_RTP10[/color]
 [color=green]; !!! Pour un installeur en version 1 seul fichier, passez les 2 ; sur les 3ème et 4ème lignes ci-dessous !!!
; !!! --------------------------------------------------------------------------------------- !!![/color]
[color=darkred]; Filename: "{tmp}\Pdx10Run.exe"; Parameters: "/q INSTALLDIR=""{app}\runtime"" /I"; StatusMsg: "Runtime installation..."; Check: OK_RTP10; Languages: en
; Filename: "{tmp}\Pdx10Run.exe"; Parameters: "/q INSTALLDIR=""{app}\runtime"" /I"; StatusMsg: "Installation du runtime..."; Check: OK_RTP10; Languages: fr[/color]
Filename: "{src}\Pdx10Run\Pdx10Run.exe"; Parameters: "/q INSTALLDIR=""{app}\runtime"" /I"; StatusMsg: "Runtime installation..."; Check: OK_RTP10; Languages: en
Filename: "{src}\Pdx10Run\Pdx10Run.exe"; Parameters: "/q INSTALLDIR=""{app}\runtime"" /I"; StatusMsg: "Installation du runtime..."; Check: OK_RTP10; Languages: fr
[color=green]; !!! --------------------------------------------------------------------------------------- !!! [/color]

[color=green]; Installation d'Acrobat Reader si validé par la fonction OK_Acrobat[/color]
 [color=green]; !!! Pour un installeur en version 1 seul fichier, passez les 2 ; sur les 3ème et 4ème lignes ci-dessous !!!
; !!! --------------------------------------------------------------------------------------- !!![/color]
[color=darkred]; Filename: "{tmp}\rp505enu.exe"; StatusMsg: "Acrobat Reader 5.05 setup..."; Check: OK_Acrobat; Languages: en
; Filename: "{tmp}\rp505fra.exe"; StatusMsg: "Installation d'Acrobat Reader 5.05..."; Check: OK_Acrobat; Languages: fr[/color]
Filename: "{src}\AcroRead\English\rp505enu.exe"; StatusMsg: "Acrobat Reader 5.05 installation..."; Check: OK_Acrobat; Languages: en
Filename: "{src}\AcroRead\Francais\rp505fra.exe"; StatusMsg: "Installation d'Acrobat Reader 5.05..."; Check: OK_Acrobat; Languages: fr
[color=green]; !!! --------------------------------------------------------------------------------------- !!! [/color]

[color=green]; Désignation des fichiers de notes de version à lancer en fonction de la langue[/color]
Filename: "{app}\ReadMe\ReadMe.txt"; Description: "View ReadMe.txt file"; Flags: shellexec postinstall skipifsilent; Languages: en
Filename: "{app}\ReadMe\LisezMoi.txt"; Description: "Voir fichier LisezMoi.txt"; Flags: shellexec postinstall skipifsilent; Languages: fr


[b]Section [UninstallDelete] [/b]
= suppression de fichiers créés qui n'ont pas été transférés/gérés dans [File]

Type: files; Name: "{app}\GolfExpert.url"
Type: files; Name: "{app}\*.bak"
Type: files; Name: "{app}\ini\instpers.ini"
Type: files; Name: "{app}\runtime\paradox\*.gid"


[b]Section [UninstallRun] [/b]
= programmes à lancer avant la désinstallation de l'application

[color=green]; Si un runtime a été installé par l'installeur de l'appli, affichage d'un message d'avertissement
; avant qu'il soit proposé de désinstaller ce runtime.
; Si vous voulez mes fichiers, cliquez [url=http://www.ifrance.com/bobftp/illustrations_posts/Un_RT_Fr.exe]ici[/url] pour une version en français et [url=http://www.ifrance.com/bobftp/illustrations_posts/Un_RT_En.exe]ici[/url] pour une version en anglais.[/color]
Filename: "{app}\exe\Un_RT_En.exe"; Check: OK_RTP10; Languages: en
Filename: "{app}\exe\Un_RT_Fr.exe"; Check: OK_RTP10; Languages: fr

[color=green]; lancement si besoin de la désinstallation du runtime
; le double "{" signifie qu'il ne s'agit pas d'une variable IS
; Attention : vérifiez que la clé soit bien la même avec votre runtime !!!
; Vous la trouverez à HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\[/color]
Filename: "{sys}\msiexec.exe"; Parameters: "/x{{14A4E477-1D83-11D5-B70B-00902713F081}"; Flags: skipifdoesntexist; Check: OK_RTP10


[b]4. Compilation, tests et création du CD d'install[/b]
Cette fois-ci, on y est presque :D

[u]4.1 Compilation de l'installeur[/u]
Maintenant, il va valoir compiler le script pour créer un ".exe" qui va contenir tous les fichiers de l'installeur, ceux de l'application, et même le runtime et Acrobat Reader si on l'a paramétré dans le script.
A noter que cette opération joue aussi le rôle de débuggeur.

Pour cela, cliquez sur "File", puis "Compile" (ou le rectangle blanc avec les 3 flèches dessus).
Un fichier "Install.exe" sera créé dans le sous-répertoire "\Racine CD".

[u]4.2 Test de l'installeur[/u]
Pour le tester il suffit de l'exécuter et pour cela :
- soit  vous cliquez sur "Run", puis "Run" (ou le triangle vert),
- soit vous double cliquez sur le fichier "Install.exe" nouvellement créé.

Une fois lancé, déroulez tout l'installeur et refaites l'opération plusieurs fois en utilisant toutes les options pour tester qu'il fonctionne correctement. Au besoin, apportez des modifications au script.

[u]4.3 Création du CD d'installation[/u]
Enfin, vous allez pouvoir créer votre CD d'installation.
Pour cela et pour parachever le travail je vous propose d'utiliser la fonction "Autorun" qui permet de lancer un programme à l'insertion du CD et de personnaliser l'icône du CD sous Windows.

Pour ce faire, comme votre installation est maintenant gérée par un installeur unique vous allez pouvoir le faire lancer automatiquement.
Côté personnalisation de votre CD, là il vous faudra un fichier ".ico" avec un icône.
Enfin, vous allez devoir créer un simple fichier texte que vous nommerez "Autorun.inf" et dont nous verrons le contenu plus bas.

L'arborescence étant déjà créée, on va juste la modifier pour des questions esthétiques en cachant quelques fichiers et répertoires qui n'ont pas à être vus par l'utilisateur :
....Autorun.inf [b](attribut caché)[/b]
....LisezMoi.txt
....ReadMe.txt
....Install.exe
.........|__AcroRead
.........|__Autorun [b](attribut caché)[/b]
.........|....|__Golf_Exp.ico [b](attribut caché)[/b]
.........|....|__Run.exe [b](attribut caché)[/b] <- optionnel
.........|__Cards
.........|__Pdx10Run

[u]Remarque :[/u] pour la création d'un CD-Rom, n'utilisez pas la possibilité de créer un seul fichier Setup englobant les Acrobat Reader et le runtime Paradox. En effet, c'est plus long à l'installation sur certaines machines peu puissantes puisqu'il faut d'abord extraire et décompresser ces fichiers, sans compter qu'en cas de problème vous n'auriez pas ces deux applications disponibles chez l'utilisateur pour le dépanner à distance en lui demandant de les réinstaller manuellement (cf. lignes à mettre en commentaire ou à activer dans le script).

Donc, commencez par créer un fichier "Autorun.inf"
- Créez un simple fichier texte nommé "Autorun.inf" avec le Bloc-notes
- Donnez lui l'attribut de fichier caché (ça sera plus joli de ne pas le voir traîner)
- Editez le et remplissez le du contenu suivant :
[quote][autorun]
open=Install.exe
icon=Autorun\Golf_exp.ico[/quote]

[u]Remarque :[/u] par contre, si par hasard vous vouliez lancer un fichier (autre qu'un fichier texte) à la place du "Install.exe" comme un fichier HTML par exemple, la commande "Open" ne pourrait pas le faire.
Pour ce faire, le mieux serait d'utiliser un petit exécutable qui fasse le travail. Vous pouvez en télécharger un [url=http://www.ifrance.com/bobftp/illustrations_posts/Run.exe]ici[/url].

Dans ce cas, et pour l'exemple d'un fichier "Index.htm" à lancer :
- Placez le fichier "Run.exe" dans le répertoire "Autorun"
- Et utilisez le code suivant pour le contenu du fichier "Autorun.inf" ("open,Index.htm" sont des paramètres de "Run.exe")
[quote][autorun]
open=Autorun\run open,Index.htm
icon=Autorun\Golf_exp.ico[/quote]

[u]Remarque :[/u] pour toute information supplémentaire sur cette fonctionnalité d'Autorun, vous pouvez consulter [url=http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/Shell/programmersguide/shell_basics/shell_basics_extending/autorun/autoplay_cmds.asp]cette page[/url] sur le site Microsoft.com .

Et enfin... vous pouvez maintenant gravez le répertoire \Racine CD en donnant le nom "Golf Expert 2" au CD, et en remplissant les rubriques "Auteur", "Copyright", etc.

Et voilà, cette fois-ci c'est fait.
Vous avez un vrai CD d'install de pro !!! :D


-------------------------------------------------------------------------------------------------------- 
[b]Annexe[/b]
-------------------------------------------------------------------------------------------------------- 

[b]Création d'un mutex le temps de l'exécution d'une appli Paradox[/b]

Un mutex est un indicateur géré par Windows qui sert à informer qu'un logiciel est en cours de fonctionnement, dans un certain contexte de droits.
Dans le cadre de notre installeur, faire créer un mutex par notre appli et le faire détecter par l'installeur sert à prévenir toute tentative de réinstallation ou de mise à jour de l'appli alors qu'elle est en cours d'exécution.

Dès lors, on a vu plus haut le paramètre à activer pour que l'installeur teste la présence du mutex et puisse bloquer l'install si nécessaire, et maintenant voilà comment faire créer le mutex par l'appli.
Pour cela, dans l'objet Paradox (souvent une fiche) qui sera lancé en premier, ajouter le code suivant :

[quote]Uses "kernel32.dll"
   CreateMutex(lpMutexAttributes clong, bInitialOwner clong, lpName cptr)clong [stdcall "CreateMutexA"]
endUses[/quote]

[quote]method init(var eventInfo Event)
   CreateMutex(0, 0, "GolfExpert")
endMethod[/quote]

Le mutex sera alors créé et restera actif tant que le runtime Paradox (ou Paradox lui-même) ne sera pas fermé.

[u]Remarque :[/u] pour plus d'information sur la fonction Createmutex, consultez [url=http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/createmutex.asp]cette page[/url] sur le site Microsoft.com.


-------------------------------------------------------------------------------------------------------- 
[b]Avertissement !!![/b]
-------------------------------------------------------------------------------------------------------- 

Attention ce 1er post du topic est régulièrement remis à jour !!!
Du coup, les commentaires des posts immédiatement après concernent en fait la version originale de cette synthèse. Pour trouver les commentaires les plus récents sur la dernière version que vous venez de lire, RDV en fin de topic.
Modifié en dernier par -=ET=- le jeu. mai 15, 2003 10:58 am, modifié 39 fois.

-=ET=-
Messages : 30
Enregistré le : jeu. mars 27, 2003 11:10 am

Message par -=ET=- » lun. mars 31, 2003 11:05 am

Côme a écrit :Je reviens juste de vacances mais je vais étudier ta solution.
Pour ma part cela fait longtemps que j'utilise et recommande InnoSetup (d'où les liens sur mon site). Pour l'instant j'ai toujours séparé l'installation du runtime de celle de mes applications.
Tu dois t'adresser à des professonnels.
Moi je m'adresse à du grand public et je ne peux pas me permettre de leur demander d'installer un runtime à part avec toutes les erreurs que ça peut engendrer.
Et puis ça ne fait pas très pro comme effet... :roll:

Côme
Site Admin
Messages : 855
Enregistré le : sam. sept. 14, 2002 10:41 pm
Localisation : Igny (Essonne)

Message par Côme » lun. mars 31, 2003 11:27 am

-=ET=- a écrit : Tu dois t'adresser à des professonnels.
Moi je m'adresse à du grand public et je ne peux pas me permettre de leur demander d'installer un runtime à part avec toutes les erreurs que ça peut engendrer.
Et puis ça ne fait pas très pro comme effet... :roll:
D'accord sur tout ! D'où l'intérêt de ta contribution :wink:

-=ET=-
Messages : 30
Enregistré le : jeu. mars 27, 2003 11:10 am

Message par -=ET=- » lun. mars 31, 2003 11:44 am

Au fait j'ai une question : il y a une configuration requise pour Wordperfect Office 2002 Pro mais rien de plus précis application par application :roll:

Or pour l'ensemble de la suite WP il est demandé Win95 OSR2 et WinNT 4.0 SP-6 minimum. Qu'en est-il précisement pour Paradox10 , voir son seul runtime ?

Peut être que la limitation qui prévaut pour Windows 95 et 95 OSR1 n'a pas de sens pour ce seul logiciel ?

Quelqu'un en sait plus ? :)

P.S. : Moi ça m'arrangerait car mon ancienne version sur Paradox 5 serait contonnée à Win 3.1x et celle refondue en V10 tournerait sur TOUS les Windows 32 bits.

Côme
Site Admin
Messages : 855
Enregistré le : sam. sept. 14, 2002 10:41 pm
Localisation : Igny (Essonne)

Message par Côme » lun. mars 31, 2003 3:03 pm

Ce que je sais c'est que les éventuels problèmes viennent non pas de Paradox mais du nouvel installateur Microsoft utilisé (MSI) :evil:

Je n'ai pas de Win95 ou win95A sous la main pour tester mais l'info m'intéresse également.

Tu peux laisser l'ancienne application en P5 sur le CD. Celle-là marchera sur tous les systèmes windows :lol:

-=ET=-
Messages : 30
Enregistré le : jeu. mars 27, 2003 11:10 am

Message par -=ET=- » lun. mars 31, 2003 6:30 pm

La version P5 est pas très jolie sous les Windows 32 bits et son installeur est vraiment cheap.
Je la laisse évidement sur le CD pour les Windows 3.1x mais si je pouvais dès 95 faire passer sur la V10 ça serait beaucoup mieux.

Pour Windows Installeur apparement il supporte bien Windows 95 sans restriction et le support de NT démarre au 4.0 SP-3 car la version utilisée par Paradox est la 1.1...
http://www.microsoft.com/windows2000/co ... si_faq.asp

Donc...
- Soit il y a un autre pb, mais lequel et est-ce qu'il est vraiment génant
- Soit Paradox n'est pas concerné et cette limitation est donnée pour l'ensemble de la suite mais elle n'est pas due à Paradox :)

Je vais faire un essai, j'ai un 95 et un 95 OSR-1

-=ET=-
Messages : 30
Enregistré le : jeu. mars 27, 2003 11:10 am

Message par -=ET=- » mer. avr. 02, 2003 2:41 pm

-=ET=- a écrit :Je vais faire un essai, j'ai un 95 et un 95 OSR-1
Bon, je confirme...
Le runtime s'installe et se désinstalle bien (no pb avec Windows Installer), mais il ne tourne pas. Dès le lancement, on a des pb avec des DLL et il ne s'ouvre pas :roll:

Conclusion... j'ai aussi testé sur Windows 95 OSR2 et c'est bien le minimum pour Paradox et son runtime ! :)
Modifié en dernier par -=ET=- le jeu. avr. 03, 2003 12:26 am, modifié 1 fois.
Eternel newbie

Côme
Site Admin
Messages : 855
Enregistré le : sam. sept. 14, 2002 10:41 pm
Localisation : Igny (Essonne)

Message par Côme » mer. avr. 02, 2003 8:18 pm

Merci à toi pour cette précision importante.
Les choses sont claires.

-=ET=-
Messages : 30
Enregistré le : jeu. mars 27, 2003 11:10 am

Message par -=ET=- » mar. avr. 08, 2003 2:34 pm

Et voilàààààààààà ! :D
Le HowTo est passé en V1. Il marche nickel et me convient 8)

P.S. : A noter que j'ai mis en DL dessus, en plus de mon script (.iss), le petit .exe pour faire afficher la seule boîte de dialogue qu'ISX ne sait pas créer :wink:
Eternel newbie

Côme
Site Admin
Messages : 855
Enregistré le : sam. sept. 14, 2002 10:41 pm
Localisation : Igny (Essonne)

Message par Côme » ven. avr. 11, 2003 8:38 am

Bravo ! Et merci pour cette doc précise et bien utile.
J'aimerais bien en savoir un peu plus sur son auteur mais bon apparemment ce n'est pas ton choix...
:new_silly:

-=ET=-
Messages : 30
Enregistré le : jeu. mars 27, 2003 11:10 am

Message par -=ET=- » ven. avr. 25, 2003 1:11 pm

Côme a écrit :J'aimerais bien en savoir un peu plus sur son auteur mais bon apparemment ce n'est pas ton choix...
:new_silly:
Ton voeux a été exaussé :wink:
RDV sur l'annonce faite de la MAJ du HowTo en V1.1 sur le NG de Michel...

Pour le reste, comme je viens de le dire ce HowTo vient de passer en V1.1.

Je vous ai rajouté des explications pour créer vos CD avec icône personnalisé et lancement automatique du Setup.exe via la commande Autorun.

Mais par ailleurs, il est maintenant certain que ce HowTo passera très prochainement en V2 avec le passage en multilingue sur Inno Setup 4.0.
Le code proposé en exemple comprendra le français et l'anglais + une install optionnelle d'Acrobat Reader.

A suivre donc... :)
Eternel newbie

Côme
Site Admin
Messages : 855
Enregistré le : sam. sept. 14, 2002 10:41 pm
Localisation : Igny (Essonne)

Message par Côme » mar. avr. 29, 2003 2:42 pm

Merci Emmanuel... :D

-=ET=-
Messages : 30
Enregistré le : jeu. mars 27, 2003 11:10 am

Message par -=ET=- » mar. mai 13, 2003 11:27 pm

Et voilà !
La V2 est en ligne :new_ukliam2:

Et voici le menu :
Je vous rappelle les principales fonctionnalités de la chose :
- Lancement automatique de l'installeur à l'insertion du CD
- Personnalisation de l'icône et du nom du CD d'installation
- Installeur 100% multilingue (écrans, messages, accord de licence, lisezmoi, etc.)
- Code & traductions fournies pour le français et l'anglais
- Sélection par défaut de la langue du Windows du PC
- Personnalisation complète de l'interface possible (couleur, images & textes)
- Contrôle de l'espace nécessaire avant install (y compris pour les programmes externes comme le RT)
- Contrôle des droits nécessaires : Administrateur pour le RT
- Contrôle si l'appli est en cours d'exécution ou non avant installation/mise à jour (mutex)
- Contrôle de la version de Windows minimum (95OSR2 à XP sauf NT 4.0 < SP-6)
- Demande de saisie des coordonnées de l'utilisateur (récupérables via un fichier .ini ou la base de registre)
- Sélection du répertoire d'installation
- Création d'un groupe dans Programmes au nom de l'application ou personnalisable
- Création de raccourcis dans ce groupe (appli, fichier lisezmoi, site web, etc.)
- Option pour l'install d'icônes sur le bureau et/ou dans la barre des taches
- Installation automatique, si nécessaire, du runtime Paradox 10 (présence ou non d'un RT10 et/ou de Paradox 10)
- Installation au choix de l'utilisateur d'Acrobat Reader 5.05 (avec détection préalable de la présence ou non d'Acrobat et/ou du reader)
- Installation d'une police de caractères
- Transfert d'un fichier "Pfwwin.ini" pour controler les lancements du RT
- Personnalisation de l'entrée dans Ajout/suppression de programmes (lien Web, icône, etc.)
- Paramétrage d'un splash screen personnalisé au lancement du RT10
- Gestion de la désinstallation avec au choix de l'utilisateur désinstallation ou non du runtime
- Désinstallation y compris des fichiers créés (.ini, .gid, .url, etc.)
- Possibilité de créer 1 seul fichier "Setup.exe" (contenant tout, y compris le runtime et Acrobat Reader) pour mise en téléchargement

La version 4 finale d'Inno Setup n'est pas encore en ligne mais d'ors et déjà tout tourne à merveille avec la beta.

Au fait, est ce que quelqu'un a déjà créé un installeur à partir de ce HowTo ?
Sur les 250 pages vues il y a bien un personne qui a testé... non ?
Eternel newbie

jfs59

Message par jfs59 » mer. mai 14, 2003 5:29 pm

Créé non mais utilisé oui ... encore merci

-=ET=-
Messages : 30
Enregistré le : jeu. mars 27, 2003 11:10 am

Message par -=ET=- » mer. mai 14, 2003 6:16 pm

jfs59 a écrit :Créé non mais utilisé oui ... encore merci
lol !
Vi mais toi t'as triché involontairement :wink:
Eternel newbie

Répondre