|
- Utilisation d'une ligne de commande
- Utilisation de la constante exeActif
- Valeur de retour d'un exécutable WINDEV
- Lancement d'application en code serveur WEBDEV
- Lancement d'une application sous Windows Vista (et supérieur)
- Divers
- Équivalence
- Fonctionnement différent en mode GO et en utilisation réelle
- Application en arrière-plan : Spécificité Android 10
LanceAppli (Fonction) En anglais : ExeRun Lance l'exécution d'un programme (exécutable par exemple) depuis l'application en cours. Versions 22 et supérieures Nouveauté 22 Versions 22 et supérieures Nouveauté 22 Syntaxe
Lancer un exécutable (en mode bloquant ou non bloquant) Masquer les détails
<Résultat> = LanceAppli(<Nom du programme> [, <Mode> [, <Attente fin> [, <Répertoire de travail>]]])
<Résultat> : Booléen - Vrai si le programme a été lancé,
- Faux dans le cas contraire. La fonction ErreurInfo permet d'obtenir plus de détails sur l'erreur.
<Nom du programme> : Chaîne de caractères Nom du programme à lancer avec si nécessaire son chemin et/ou les paramètres à passer au programme. - Si aucun chemin n'est précisé, le programme est recherché tout d'abord dans le répertoire en cours, puis dans le répertoire de Windows et dans les répertoires accessibles par le PATH.
- Si l'exécutable correspond à un nom long avec espaces, il est nécessaire d'utiliser la syntaxe suivante :
<Nom du programme> = " " " Nom_Long_avec_espaces" " Ligne_commande"
Versions 22 et supérieures Nouveauté 22 <Mode> : Constante optionnelle de type entier Mode de lancement du programme (aucune action sur les programmes DOS). | | exeActif (Valeur par défaut) | Le programme lancé est actif, il s'exécute en "prenant la main" sur le programme en cours. | exeIconise | Le programme lancé est inactif et s'exécute icônisé.
| exeInactif | Le programme lancé est inactif : il s'exécute alors que le programme en cours garde le focus. | exeMaximise | Le programme lancé est actif, il s'exécute en "prenant la main" sur le programme en cours (la fenêtre d'exécution a la taille maximale autorisée). |
<Attente fin> : Constante de type Booléen optionnelle Paramètre le délai nécessaire à la reprise de l'exécution du programme en cours : | | exeBloquant | Le programme en cours reprend son exécution lorsque le programme lancé est terminé. | exeNonBloquant (Valeur par défaut) | Le programme en cours et le programme lancé s'exécutent en parallèle. |
<Répertoire de travail> : Chaîne de caractères optionnelle Répertoire de travail de l'application à lancer. Remarques Utilisation d'une ligne de commande Pour passer des paramètres en ligne de commande à l'exécutable lancé, il est nécessaire de spécifier le chemin complet et le nom de l'exécutable à lancer. Si le programme lancé est réalisé avec WINDEV, il sera possible de récupérer la ligne de commande avec la fonction LigneCommande. Versions 25 et supérieures Nouveauté 25Composante : wd260std.dll
Documentation également disponible pour…
|
|
|
| |
| Du bon usage du paramètre «Répertoire de travail» |
|
| Le paramètre «Répertoire de travail» est utilisé pour définir le dossier en cours du nouveau processus, une fois que celui-ci est crée, avant d'être exécuté.
Le paramètre «Répertoire de travail» ne sert pas à localiser l'emplacement du fichier exécutable renseigné dans le paramètre «Nom du programme».
Si le programme à exécuter n'est pas préfixé par un chemin qui désigne son emplacement, alors Windows effectue une recherche (dossier en cours, dossier système, dossiers de la variable d'environnement PATH...). Le paramètre «Répertoire de travail» n'est pas pris en compte pour cette recherche. |
|
|
|
| |
| |
| |
|
| UAC : Lancer un programme nécessitant plus de droits |
|
| Si on essaie d'ouvrir un programme nécessitant les droits administrateur depuis une application ne les ayants pas avec LanceAppli() il ne se passe rien, l'UAC ne demande même pas à l'utilisateur s'il veut donner les droits.
Pour parer à ça il faut utiliser LanceAppliAssociée() à la place qui utilise l'API ShellExecute de Windows alors que LanceAppli() utilise l'API CreateProcess qui échoura si le processus demande des droits d'admin.
Plus d'info sur : http://technet.microsoft.com/fr-fr/library/dd835540(v=ws.10).aspx |
|
|
|
| |
| |
| |
|
| | Sur les systèmes Windows Vista/7, il arrive que l'on ai une erreur type "Impossible d'ouvrir l'application ..., Application win32 non valide".
Remplacer LanceAppli(sMonAppli,<options>) par LanceAppli(fCheminCourt(sMonAppli),<options>) |
|
|
|
| |
| |
| |
| |
| |
| |
| | |
| |