2 pièce(s) jointe(s)
(Inno Setup] Execution Externe
Bonjour,
J'avance dans mon install de firebird, je suis arrivé a un endroit ou je dois exécuter un Programme Externe via une ligne de commande.
Voici deux photos vous illustrant ce que je dois réaliser :
Pièce jointe 484761
Pièce jointe 484767
Comme vous pouvez le voir sur cette photo, je dois réaliser la ligne de commande "instclient install gds32" à la condition que le fichier suivant existe :
Code:
ExpandConstant('{pf32}\Firebird\Firebird_2_0\bin\instclient.exe')
Si celui-ci existe, je dois exécuter la commande donnée ci-dessous et le placer dans le répertoire
Code:
ExpandConstant('{pf32}\Firebird\Firebird_2_0\bin')
Voici le code que j'ai réalisé pour le moment :
Code:
1 2 3
|
if (FileExists(ExpandConstant('{pf32}\Firebird\Firebird_2_0\bin\instclient.exe'))) Then
Exec(ExpandConstant('cmd.exe'),'instclient install gds32',ExpandConstant('{pf32}\Firebird\Firebird_2_0\bin'), SW_SHOWNORMAL, ewWaitUntilTerminated, ErrorCode); |
Or, lorsque je compile celui-ci, La page CMD s'ouvre mais ne m’exécute pas la commande, je suis obligé de la taper au clavier pour que cela installe "gds32" !
Vous allez me dire que c'est logique qu'elle s'ouvre car j'ai mis "SW_SHOWNORMAL", mais lorsque je mets "SW_HIDE" mon installateur s’arrête de fonctionner ... Je pense que celui-ci reste bloqué sur la page CMD car je ne peux pas rentrer la commande nécessaire.
D’où ma question, quelle est mon erreur qui empêche le programme de continuer son installation automatiquement, sans que je rentre la commande ?
Faut-il que j'utilise ShellExec à la place de Exec ?
Cordialement
Ayouten