execute

 

execute

Lance un fichier dans l'archive d'installation.

Méthode de

Objet Install

Syntaxe

int execute (
   Chaîne xpiSourcePath [, Booléen blocking]);
int execute (
   Chaîne xpiSourcePath,
   Chaîne args [, Booléen blocking]);

Paramètres

La méthode execute a les paramètres suivants :

xpiSourcePath
Le chemin du fichier à extraire et à exécuter. Notez que ce chemin pointe dans l'archive <tt>xpi</tt> elle-même.
args
Un paramètre chaîne passé à l'exécutable. Ignoré sous Mac OS. Voir les notes ci-dessous.
blocking
Une valeur booléenne qui spécifie si l'installation doit ou non attendre la fin de l'exécution du fichier avant de continuer. La valeur par défaut est false. Voir les notes ci-dessous. Le paramètre blocking n'est pas disponible comme partie de cette méthode dans les versions antérieures de Netscape 6.1/Mozilla 0.9.3.

Retour

Un code d'erreur entier. Pour la liste des valeurs possibles, voir Codes retournés.

Description

La méthode execute extrait le fichier spécifié depuis l'archive <tt>xpi</tt> vers un fichier temporaire.

Le code doit appeler la méthode performInstall pour réellement exécuter le fichier. Cette méthode peut être utilisée pour lancer un installeur InstallShield ou tout autre exécutable d'installation stocké dans l'archive <tt>xpi</tt>.

Exécution des fichiers installés
Note : Si le fichier qu'on veut exécuter est l'un de ceux à installer (contrairement à un installeur exécutable qui sera effacé après utilisation), alors, il faut utiliser la méthode execute de l'objet File. File.execute() exécute un fichier installé (tel que le navigateur) après son installation et est généralement placé à la fin du script d'installation et en dehors du bloc principal.

La méthode execute de l'objet Install, d'un autre côté, efface l'exécutable de son emplacement temporaire une fois son exécution achevée. L'argument optionnel blocking, lorsqu'il est défini à true, spécifie que l'installation doit attendre que l'exécutable finisse avant de procéder à la prochaine commande d'installation mise en file d'attente. Si ce paramètre n'est pas défini et qu'un exécutable ne faisant pas partie de l'installation est lancé, une erreur survient lors du redémarrage du navigateur.

Passage d'arguments à l'exécutable

Le paramètre args, lorsqu'il est présent, passe une chaîne à l'exécutable comme paramètres de ligne de commande. La ligne suivante, par exemple, passe le paramètre de ligne de commande -c à l'exécutable :

err = file.execute(myfile, "-c", true);

Lorsqu'on désire passer plus d'un paramètre à l'exécutable, il est nécessaire de formater la chaîne args de façon particulière afin que les paramètres puissent être cassés et passés séparément comme requis. En général, il est possible d'utiliser les guillemets uniques pour la chaîne args et les doubles guillemets pour délimiter les arguments de ligne de commande dans la chaîne. Les règles d'analyse suivantes s'appliquent :

  • Les doubles guillemets sont traités comme des guillemets simples, les guillemets simples sont ignorés par l'exécutable mais valides dans la méthode execute().
  • Les guillemets simples extérieurs encadrant la chaîne args sont éliminés lorsque la chaîne est passée à l'exécutable.
  • Les guillemets échappés, ou inversés , sont passés à l'exécutable. Tous les autres cas d'inversion sont ignorés.

Cela signifie qu'afin de passer trois arguments en ligne de commande (-c, -d et -s) à l'exécutable, il est nécessaire de formater la chaîne args comme suit :

err = file.execute(myfile, '"-c""-d""-s"', true);

Techniquement, en considérant les règles ci-dessus, il est possible de passer les mêmes arguments avec la ligne suivante, mais le résultat sera moins lisible :

err = file.execute(myfile, "\"-c\"\"-d\"\"-s\"", true);

Voir également la note sur les binaires Macintosh dans addFile.

Interwiki Language Links

 

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : teoli, Fredchat, Kyodev, Mgjbot
 Dernière mise à jour par : teoli,