| Commande EXECUTE | |
|
|
|
Auteur | Message |
---|
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: Oui ! Dim 29 Nov 2009 - 14:37 | |
| Génial, ce truc de chr$(34) ! Ca marche et ça élimine le problème des espaces dans les noms de programmes et de répertoires (avec execute) ! Je crois que je t'avais déjà vu le faire dans une autre rubrique, JL35, mais je n'en avais pas compris tout l'intérêt. Ah, pour ce qui est du chemin de word et d'excel, j'ai résolu le problème en collant un raccourci menant vers winword et excel dans chaque répertoire qui m'intéressait. C'est vrai que ça n'est pas très universel... Mais je crois que j'ai une autre formule que je n'ai pas encore essayée, et qui serait valable pour tout l'ordinateur, ce serait de coller un raccourci de ces deux programmes dans system32. | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Commande EXECUTE Dim 29 Nov 2009 - 14:50 | |
| Ca marchera, parce que system32 fait partie des chemins implicites dans lesquels windows cherche les exécutables. Va en ligne de commande, et tape PATH tout seul: ça t'indiquera où windows cherchera en priorité les exécutables que tu lui soumets, si tu n'indiques pas le chemin complet. (Tu peux d'ailleurs y rajouter tes propres chemins, par exemple pour moi j'ai C:\Util qui contient mes utilitaires). | |
|
| |
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: oui Dim 29 Nov 2009 - 14:51 | |
| Exact, je viens d'essayer, ça marche ! Un raccourci de chaque dans C:\WINDOWS\System32 et l'ordinateur trouve le chemin tout seul, comme un grand ! | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Commande EXECUTE Dim 29 Nov 2009 - 23:01 | |
| @jjn4 Je reviens sur ton intervention 3 posts plus haut pour préciser que le chr$(34) (=quote) résout le problème des espaces dans les paramètres d'une commande EXECUTE, mais pas dans le nom du programme appelé, là ça ne marche pas, c'est un problème de Panoramic. C'est justement l'objet de la demande de modification de l'Execute. | |
|
| |
bleunounet
Nombre de messages : 150 Date d'inscription : 26/10/2007
| Sujet: Re: Commande EXECUTE Lun 30 Nov 2009 - 11:25 | |
| bonjour a tous.
JL5 j'ai vu plus haut que tu savez pas faire fonctionner wordpad.exe. essaye sa sa fonctionne
execute "WRITE " :rem ouvre wordpad | |
|
| |
bleunounet
Nombre de messages : 150 Date d'inscription : 26/10/2007
| Sujet: Re: Commande EXECUTE Lun 30 Nov 2009 - 11:27 | |
| | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Commande EXECUTE Lun 30 Nov 2009 - 14:15 | |
| tu as raison bleunounet, write.exe est un raccourci vers wordpad, et d'accès direct. Il est dans C:\Windows\System32 qui est un chemin connu de Windows.
D'ailleurs il y a un tas de programmes .exe dans ce répertoire, en plus de l'émulation d'anciennes commandes Ms-Dos, à explorer, avec précautions évidemment (ne pas lancer n'importe quoi sans savoir, mais on peut avoir la syntaxe de beaucoup de commandes en tapant NomCommande /?). | |
|
| |
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: Réponse Lun 30 Nov 2009 - 23:46 | |
| @JL35 (réponse à 4 interventions plus haut du Dim 29 à 23.01.25) : J'ai relu plusieurs fois ce que tu me dis pour être bien sûr d'avoir compris. Mais si, mais si, c'est bien dans les noms des répertoires et des programmes que le chr$(34) (guillemets pour les intimes) résoud les problèmes d'espace et non seulement dans les paramètres. Exemple qui marche très bien chez moi : - Code:
-
execute "EXCEL.EXE " + chr$(34) + "C:\Documents and Settings\XXXXXXX\Mes documents\Mes pg Excel\Mon Essai 01.xls" +chr$(34) Et je m'aperçois que j'avais déjà résolu une partie du problème, en consultant un programme que j'avais déjà fait il y a un moment, au sujet des espaces dans les répertoires (ex: Program files) en les mettant d'abord dans dir_change qui, lui, accepte les espaces, et en ne mettant que le nom final du programme dans execute. Mais là, c'est encore mieux ! | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Commande EXECUTE Lun 30 Nov 2009 - 23:56 | |
| Désolé jjn4, mais pas d'accord !! Dans ton exemple, EXCEL.EXE est le nom du programme appelé, ET NE COMPORTE PAS D'ESPACE ! Et tout ce qui suit derrière, que tu as encadré par des chr$(34), eh bien ce sont les paramètres que tu passes à Excel.exe (c'est à dire un nom de fichier). Essaie de copier par exemple notepad.exe dans Program Files, et de faire: - Code:
-
EXECUTE "C:\Program Files\notepad.exe" et tu verras que là ça ne marche plus, que tu mettes des chr$(34) où tu veux. | |
|
| |
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: Ok Mar 1 Déc 2009 - 0:05 | |
| Ok, je comprends ce que tu veux dire. Dans ce cas, tu appliques le plan B : c$=dir_current$ dir_change "C:\Program Files\" execute "notepad.exe" dir_change c$J'étais tellement content de cette découverte que je n'avais pas compris ce que tu appelais nom et paramètre. En tout cas, c'est déjà un grand pas quand même. | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Commande EXECUTE Mar 1 Déc 2009 - 0:09 | |
| Ca c'est pas bête, ton plan B. C'est même finalement une solution assez élégante. Je m'incline.
Non, je ne m'incline pas finalement, je parle sans réfléchir. Ta solution est valable pour le chemin, mais que fais-tu si le nom du programme lui-même comporte des espaces ? par exemple Mon Prog.exe (c'est mon exemple de notepad qui était mal choisi). | |
|
| |
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: bof Mar 1 Déc 2009 - 0:23 | |
| J'ai examiné les noms des programmes exe les plus courants, je n'en ai pas trouvé avec des espaces. Mon Prog.exe, c'est un programme de particulier qui fait un peu de programmation. Le particulier n'a qu'à supprimer l'espace du programme qu'il a lui-même créé (MonProg.exe) ou mettre des traits d'union (Mon-Prog.exe). Na ! | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Commande EXECUTE Mar 1 Déc 2009 - 15:08 | |
| Et ça c'est ton plan C (des vaches). Ca fait quand même des contraintes, minimes certes. | |
|
| |
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: pffff Mar 1 Déc 2009 - 22:42 | |
| Plancé des vaches, pffff ! Et bien, j'ai même un plan D, si tu veux ! Le voici : - Code:
-
' Soit un programme qui a trouvé un fichier .exe avec un espace dedans dim a$ , b$ , x$ , i a$="Mon Prog.exe" : ' d'une quelconque manière (open_dialog, file_find_...) for i=1 to len(a$) x$=mid$(a$,i,1) if x$=" " then x$="-" b$=b$+x$ next i file_rename a$,b$ execute b$ file_rename b$,a$ Ah ! Et voilà, l'travail ! | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Commande EXECUTE Mer 2 Déc 2009 - 17:53 | |
| Trop facile de renommer les exécutables ! Ca marchera évidemment, mais à mon avis ce n'est pas très sérieux. | |
|
| |
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: Ohhh Mer 2 Déc 2009 - 23:00 | |
| Quelle mauvaise foi !!! D'autant que rien n'est vraiment modifié puisque tout retourne à l'état premier. Ravi que tu admettes quand même que ça marche ! Bon, allez, c'est vrai que ce sera mieux que Jack (un jour où il aura le temps) règle ce problème, plutôt que d'employer ces contournements tarabiscottés. Là dessus, on est d'accord tous les deux. | |
|
| |
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: Fin Ven 4 Déc 2009 - 0:43 | |
| Finalement, c'est bien ces petites joutes humoristiques. Ca stimule l'imagination ! | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Commande EXECUTE Ven 4 Déc 2009 - 15:24 | |
| Evidemment, c'est d'ailleurs fait pour ça ! mais chut ! il ne faut pas en abuser... | |
|
| |
Contenu sponsorisé
| Sujet: Re: Commande EXECUTE | |
| |
|
| |
| Commande EXECUTE | |
|