# Comment lancer une application?

**URL:** <https://forum.xojo.com/t/comment-lancer-une-application/70675>\
**Category:** Français\
**Created:** [June 10, 2022, 3:39pm UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675 "2022-06-10T15:39:16Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Denis\_DUBOIS](https://forum.xojo.com/letter_avatar_proxy/v4/letter/d/e9bcb4/32.png) [@Denis\_DUBOIS](https://forum.xojo.com/u/Denis_DUBOIS)\
**Post date:** [June 10, 2022, 3:39pm UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/1 "2022-06-10T15:39:16Z")

</div>

Bonjour,  
Impossible de lancer une app présente dans Applications/Utilitaires ! J’ai “not found” à chaque fois et je ne vois pas ou ca pêche et ca m’énerve !

```auto
Var TermApp As FolderItem = SpecialFolder.Applications.child("Utilitaires").child("Terminal.app")
If TermApp <> Nil Then
  if TermApp.Exists then
    Shell1.Execute("open -e " + TermApp.NativePath) //ou avec .ShellPath
  else 
    msgbox("Not found !")
  end
end

//open - a
//open -e 
//open -n

```

Merci.

---

<div class="post-metadata">

**Author:** ![Michel\_Bujardet](https://forum.xojo.com/user_avatar/forum.xojo.com/michel_bujardet/32/252_2.png) [@Michel\_Bujardet](https://forum.xojo.com/u/Michel_Bujardet)\
**Post date:** [June 10, 2022, 6:06pm UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/2 "2022-06-10T18:06:57Z")

</div>

> [@Denis\_DUBOIS](#):
>
> `s").child("Terminal.app")`

Essayez avec ShellPath au lieu de NativePath.

Egalement, êtes vous sûr de “Utilitaires” ? Sur mon système US, c’est “Utilities”. Faites Command-i sur Terminal pour vérifier le chemin exact.

---

<div class="post-metadata">

**Author:** ![Denis\_DUBOIS](https://forum.xojo.com/letter_avatar_proxy/v4/letter/d/e9bcb4/32.png) [@Denis\_DUBOIS](https://forum.xojo.com/u/Denis_DUBOIS)\
**Post date:** [June 11, 2022, 7:20am UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/3 "2022-06-11T07:20:46Z")

</div>

Merci @Michel_Bujardet , mais je ne comprends pas trop ta réponse. C’est quoi ce “s” ?  
Sur mon système francais c’est bien dans le dossier “Utilitaires” (confirmé par Cmd+i)  
et ShellPath (la Doc recommande plutôt NativePath pour macOS, si je comprend bien) ne change rien.  
Tu peux vérifier l’exécution du code chez toi ?  
Merci.

---

<div class="post-metadata">

**Author:** ![Thomas\_ROBISSON](https://forum.xojo.com/user_avatar/forum.xojo.com/thomas_robisson/32/15868_2.png) [@Thomas\_ROBISSON](https://forum.xojo.com/u/Thomas_ROBISSON)\
**Post date:** [June 11, 2022, 7:38am UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/4 "2022-06-11T07:38:41Z")

</div>

Parfois les noms des dossiers et ceux des applications sont localisés, ils s’affichent avec un nom Français (pour nous autres) alors que leur nom vu par le système est en Anglais. Je réponds depuis un PC-Windows et ne peux vérifier, mais si tu lis les infos du dossier Utilitaires tu verras que son nom est “Utility” (ou “Utilities” ?) et que c’est de cette manière que tu dois l’écrire : .Child(“Utility”).

Sinon je pense que le “s” a été copié depuis ta ligne :  
SpecialFolder.Applications.child("Utilitaire**s").child(“Terminal.app”)**

---

<div class="post-metadata">

**Author:** ![Michel\_Bujardet](https://forum.xojo.com/user_avatar/forum.xojo.com/michel_bujardet/32/252_2.png) [@Michel\_Bujardet](https://forum.xojo.com/u/Michel_Bujardet)\
**Post date:** [June 11, 2022, 9:10am UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/5 "2022-06-11T09:10:12Z")

</div>

Pour je ne sais quelle raison, TermApp.exists est faux, malgré que le chemin soit correct:  
/Applications/Utilities/Terminal.app

Cependant, j’ai fait un test avec un simple fichier que j’ai mis dans Utilities, et il existe.

J’ai fait autre chose: vérifier avec le terminal le contenu du dossier Utilities:

```auto
michelbujardet@Michels-Mac-mini ~ % cd /Applications
michelbujardet@Michels-Mac-mini /Applications % cd Utilities
michelbujardet@Michels-Mac-mini Utilities % ls
michelbujardet@Michels-Mac-mini Utilities % 

```

De fait, Unix ne montre rien dans le dossier. Comme le shell s’exécute au niveau Unix, pas étonnant qu’il ne trouve pas Terminal.

Il semble que le Finder montre des applications qui sont ailleurs. Apple est assez familier de ce genre de prestidigitation…

---

<div class="post-metadata">

**Author:** ![Denis\_DUBOIS](https://forum.xojo.com/letter_avatar_proxy/v4/letter/d/e9bcb4/32.png) [@Denis\_DUBOIS](https://forum.xojo.com/u/Denis_DUBOIS)\
**Post date:** [June 11, 2022, 9:30am UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/6 "2022-06-11T09:30:48Z")

</div>

Effectivement je le constate. Alors, quelle est la solution ? Peut-on lancer le Terminal quelque soit sa localisation avec une commande comme “open - e” par exemple ?

---

<div class="post-metadata">

**Author:** ![Michel\_Bujardet](https://forum.xojo.com/user_avatar/forum.xojo.com/michel_bujardet/32/252_2.png) [@Michel\_Bujardet](https://forum.xojo.com/u/Michel_Bujardet)\
**Post date:** [June 11, 2022, 9:35am UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/7 "2022-06-11T09:35:54Z")

</div>

On doit pouvoir lancer Terminal avec son UITypeIdentifier:  
com.apple.terminal.session

Cela n’est pas possible avec le shell.

Toutefois, on peut lancer une application à partir de son identifiant avec les plugins MBS, ou avec macOS Lib.

---

<div class="post-metadata">

**Author:** ![Emile\_Schwarz](https://forum.xojo.com/letter_avatar_proxy/v4/letter/e/90ced4/32.png) [@Emile\_Schwarz](https://forum.xojo.com/u/Emile_Schwarz)\
**Post date:** [June 11, 2022, 10:32am UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/8 "2022-06-11T10:32:09Z")

</div>

que se passe-t-il lorsque tu dépose l’icône de ton application dans la fenêtre du Terminal ?

ça aide à comprendre ?

---

<div class="post-metadata">

**Author:** ![Michel\_Bujardet](https://forum.xojo.com/user_avatar/forum.xojo.com/michel_bujardet/32/252_2.png) [@Michel\_Bujardet](https://forum.xojo.com/u/Michel_Bujardet)\
**Post date:** [June 11, 2022, 11:39am UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/9 "2022-06-11T11:39:47Z")

</div>

Non. Cela donne le même faux chemin /Applications/Utilities/Terminal.app qui pointe sur un endroit vide.

---

<div class="post-metadata">

**Author:** ![Emile\_Schwarz](https://forum.xojo.com/letter_avatar_proxy/v4/letter/e/90ced4/32.png) [@Emile\_Schwarz](https://forum.xojo.com/u/Emile_Schwarz)\
**Post date:** [June 11, 2022, 1:03pm UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/10 "2022-06-11T13:03:47Z")

</div>

Incroyable (mais je te crois)…

ls -l /Applications/Utilities

retourne… ODBC Manager (au lieu des 17 éléments qui s’y trouvent)…

Il y a quelque chose de pouri au royaume du Dannemark…

---

<div class="post-metadata">

**Author:** ![Denis\_DUBOIS](https://forum.xojo.com/letter_avatar_proxy/v4/letter/d/e9bcb4/32.png) [@Denis\_DUBOIS](https://forum.xojo.com/u/Denis_DUBOIS)\
**Post date:** [June 11, 2022, 1:51pm UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/11 "2022-06-11T13:51:05Z")

</div>

On dirais que j’ai levé un lièvre…  
Je vais voir du côté de MBS…

---

<div class="post-metadata">

**Author:** ![Denis\_DUBOIS](https://forum.xojo.com/letter_avatar_proxy/v4/letter/d/e9bcb4/32.png) [@Denis\_DUBOIS](https://forum.xojo.com/u/Denis_DUBOIS)\
**Post date:** [June 11, 2022, 2:14pm UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/12 "2022-06-11T14:14:37Z")

</div>

Même l’AppleScript ne fonctionne pas !

```auto
Shell1.Execute "osascript -e 'tell application ""Terminal""'"

```

---

<div class="post-metadata">

**Author:** ![Denis\_DUBOIS](https://forum.xojo.com/letter_avatar_proxy/v4/letter/d/e9bcb4/32.png) [@Denis\_DUBOIS](https://forum.xojo.com/u/Denis_DUBOIS)\
**Post date:** [June 11, 2022, 3:37pm UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/13 "2022-06-11T15:37:47Z")

</div>

Ca marche enfin ! (avec MBS)  
Ma (petite) contribution pour la communauté :

```auto
if not NSWorkspaceMBS.launchApplication("terminal") then
  MsgBox "Application Terminal.app non trouvée !"
end if

```

Enfin, pour déterminer le chemin exact :

```auto
MsgBox NSWorkspaceMBS.fullPathForApplication("terminal").ShellPath

```

---

<div class="post-metadata">

**Author:** ![François\_Van\_Lerberghe](https://forum.xojo.com/letter_avatar_proxy/v4/letter/f/e9c0ed/32.png) [@François\_Van\_Lerberghe](https://forum.xojo.com/u/Fran%C3%A7ois_Van_Lerberghe)\
**Post date:** [June 11, 2022, 3:42pm UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/14 "2022-06-11T15:42:42Z")

</div>

Dans le Terminal, la commande `ls -l /Applications/Utilities` fonctionne tout à fait correctement chez moi ( MacOS 10.14.6 Français.)

> [@Denis\_DUBOIS](#):
>
> `Shell1.Execute("open -e " + TermApp.NativePath`

1. L’argument `-e` de la commande `open` veut dire "ouvre le fichier avec TextEdit. Or textEdit ne sait certainement pas lire un fichier de type application (Terminal.app).  
Fait un `man open` dans le terminal pour voir les options

2. Il est bien possible que la commande lancée à partir de Xojo ne trouve pas le fichier dans Utilitaires si Xojo n’a pas la permission d’aller voir dans tous les fichiers du disque.  
Dans Préférences système : Sécurité et confidentialité, Xojo y est-il autorisé ?

---

<div class="post-metadata">

**Author:** ![François\_Van\_Lerberghe](https://forum.xojo.com/letter_avatar_proxy/v4/letter/f/e9c0ed/32.png) [@François\_Van\_Lerberghe](https://forum.xojo.com/u/Fran%C3%A7ois_Van_Lerberghe)\
**Post date:** [June 11, 2022, 3:46pm UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/15 "2022-06-11T15:46:50Z")

</div>

> [@Denis\_DUBOIS](#):
>
> `NSWorkspaceMBS.fullPathForApplication("terminal")`

Oui, certainement la meilleure façon de trouver l’application. Je suppose que c’est son UITypeIdentifier, comme préconisé par [Michel Bujardet](https://forum.xojo.com/u/Michel_Bujardet) ?

---

<div class="post-metadata">

**Author:** ![Michel\_Bujardet](https://forum.xojo.com/user_avatar/forum.xojo.com/michel_bujardet/32/252_2.png) [@Michel\_Bujardet](https://forum.xojo.com/u/Michel_Bujardet)\
**Post date:** [June 11, 2022, 9:15pm UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/16 "2022-06-11T21:15:50Z")

</div>

C’est cela.

---

<div class="post-metadata">

**Author:** ![Emile\_Schwarz](https://forum.xojo.com/letter_avatar_proxy/v4/letter/e/90ced4/32.png) [@Emile\_Schwarz](https://forum.xojo.com/u/Emile_Schwarz)\
**Post date:** [June 12, 2022, 9:13am UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/17 "2022-06-12T09:13:48Z")

</div>

> [@François\_Van\_Lerberghe](#):
>
> Dans le Terminal, la commande `ls -l /Applications/Utilities` fonctionne tout à fait correctement chez moi ( MacOS 10.14.6 Français.)

Pas avec 12.4 (Monterey) / M1 MacBook Pro.

> Il est bien possible que la commande lancée à partir de Xojo ne trouve pas le fichier  
> Sous macOS 11 et 12, il est demandé à l’utilisateur la permission. S’il ne la donne pas… mais là n’est pas le problème.

Denis:  
Attentiojn à la casse des noms de fichiers (paths): macOS peut y être sensible (l’utilisateur peut avoir un macOS sensible à la casse).

---

<div class="post-metadata">

**Author:** ![Denis\_DUBOIS](https://forum.xojo.com/letter_avatar_proxy/v4/letter/d/e9bcb4/32.png) [@Denis\_DUBOIS](https://forum.xojo.com/u/Denis_DUBOIS)\
**Post date:** [June 12, 2022, 10:11am UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/18 "2022-06-12T10:11:07Z")

</div>

Curieux car chez moi la commande :

```auto
ls -l /Applications/Utilities

```

renvoie 2 entrée sur Logitech qui n’ont rien a voir avec les utilitaires Apple :  
drwxr-xr-x 3 root wheel 96 1 nov 2021 Logi Bolt Uninstaller.app  
drwxrwxr-x 3 root wheel 96 1 nov 2021 LogiMgr Uninstaller.app

---

<div class="post-metadata">

**Author:** ![Michel\_Bujardet](https://forum.xojo.com/user_avatar/forum.xojo.com/michel_bujardet/32/252_2.png) [@Michel\_Bujardet](https://forum.xojo.com/u/Michel_Bujardet)\
**Post date:** [June 12, 2022, 12:04pm UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/19 "2022-06-12T12:04:47Z")

</div>

De toutes manières, au moins sous Monterey, les applications que l’on voit dans le finder ne sont pas vue par Unix (Terminal et shell).

---

<div class="post-metadata">

**Author:** ![Michel\_Bujardet](https://forum.xojo.com/user_avatar/forum.xojo.com/michel_bujardet/32/252_2.png) [@Michel\_Bujardet](https://forum.xojo.com/u/Michel_Bujardet)\
**Post date:** [June 12, 2022, 6:45pm UTC](https://forum.xojo.com/t/comment-lancer-une-application/70675/20 "2022-06-12T18:45:12Z")

</div>

Je viens de découvrir qu’on ne peut faire un ls sur le bureau.

Décidément, Monterey est plein de surprises !

[Next page](https://forum.xojo.com/t/comment-lancer-une-application/70675.md?page=2)
