| Récupérer nom fichier sur clic droit menu contextuel Windows | |
|
|
|
Auteur | Message |
---|
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Récupérer nom fichier sur clic droit menu contextuel Windows Sam 29 Oct 2016 - 13:27 | |
| Bonjour ! je viens de mettre en place un menu contextuel dans windows pour le lancement d'un programme Panoramic. Pour l'instant le programme se lance en cliquant sue la ligne CONVERSION BAS > EXE. Mais au lieu de choisir le fichier je souhaiterai récupérer le nom du fichier cliqué dans le menu de windows afin de rendre le programme entièrement automatique. Mais là je ne sais pas comment faire. Peut être avec la DLL de Klaus... Je vous glisse une image vous comprendrez mieux. Il s'agit du menu CONVERSION BAS > EXE | |
|
| |
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Sam 29 Oct 2016 - 14:11 | |
| Là, je suis déjà bluffé par l' ajout sur le menu windows. Peux tu nous dire comment tu as fait cela ? | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Sam 29 Oct 2016 - 14:22 | |
| Comme cela : Ouvrir la base de registre WINDOWS : menu demarrer puis REGEDIT Ouvrir [HKEY_CLASSES_ROOT] Ouvrir [SystemFileAssociations] Ouvrir ou nouvelle clé [.bas] nouvelle clé [shell] nouvelle clé ["texte du menu a rajouter"] nouvelle clé [command] modifier la valeur par défaut ["C:\chemin_complet\programme.exe"\%1"\] J'ai un bon ami qui connaît parfaitement cela, Tu le connais sûrement aussi... | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Sam 29 Oct 2016 - 16:01 | |
| | |
|
| |
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Sam 29 Oct 2016 - 16:43 | |
| - Minibug a écrit:
- Mais au lieu de choisir le fichier je souhaiterai récupérer le nom du fichier cliqué dans le menu de windows afin de rendre le programme entièrement automatique.
Maintenir la touche Maj (Shift), faire un click droit sur le nom du fichier et choisir Copier en tant que chemin d’accès.. Le chemin d’accès complet (unité de disque + noms des dossiers + nom du fichier) se trouve dans le presse-papier. Tu peux le coller où tu veux. Si ça ne répond pas à ta demande, tu sais quoi faire de mon blabla! | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Sam 29 Oct 2016 - 18:04 | |
| Bonjour Papydall !
L'idée c'est : 1. De cliqué sur un fichier *.BAS par le bouton droit pour accéder au menu contextuel dans Windows 2 Voir dans le menu La ligne CONVERSION BAS > EXE apparaitre 3 En cliquant sur la ligne CONVERSION BAS > EXE permettre le lancement automatique du programme Panoramic avec la transmission du nom du fichier.
Voila peut être que c'est plus clair. J'ai réussi les opérations 1 et 2. Puisque le menu permet l'affichage et le lancement du programme Panoramic. Pour la 3ième étape seul l'ouverture est OK mais je n'ai aucune idée pour la récupération du nom du fichier cliqué...
Ton idée permet bien de récupérer les infos, sauf que je cherche à récupérer directement ces infos dans Panoramic. | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Sam 29 Oct 2016 - 19:18 | |
| - Citation :
- i quelqu'un peut comprendre... Klaus peut être...
Oui, certes. Et c'est simple. Tu suis le conseil donné dans la discussion dont tu as indiqué le lien, à savoir placer un espace suivi de %1 dans la définition du programme à appeler par la ligne du menu contextuel. Alors, dans ton programme, tu n'as plus qu'à faire: - Code:
-
fichier_choisi$ = param_value$(1) et le tour est joué. | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Sam 29 Oct 2016 - 21:02 | |
| Merci Klaus ! En fait c'était simple. J'ai quand même un soucis, je n'arrive pas à configurer la clé de commande me permettant de prendre les infos. J'ai tenté plusieurs format : "D:\BASIC\DLLs\creat.exe" " %1" "D:\BASIC\DLLs\creat.exe " "%1" "D:\BASIC\DLLs\creat.exe %1" J'ai tenté aussi avec des / ou \ mais sans résultat. Mais j'ai toujours un problème dans le retour de la variable PARAM_VALUE(1) Je ne vois plus comment faire... | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Sam 29 Oct 2016 - 21:07 | |
| Je reprends ce que tu as posté plus haut. Donc, ça devrait être: - Code:
-
["C:\chemin_complet\programme.exe\ %1"\] en respectant l'espace devant le signe %. Tu peux essayer également sans ces guillemets. Ou alors: - Code:
-
["C:\chemin_complet\programme.exe\" %1\] avec les guillemets juste autour du chemin, puis un espace avant le %1. | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Sam 29 Oct 2016 - 21:21 | |
| Non ça ne fonctionne pas !
Si tu veux, fait l’essai avec les infos que j'ai posté au dessus. J'arrive dans certains cas a lancer le programme mais après il y a une erreur dans le chemin... | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Sam 29 Oct 2016 - 21:39 | |
| Si j'inscrit la ligne sans les guillemets donc [D:\BASIC\DLLs\creat.exe %1] Le retour dans le programme est le chemin sans le nom du fichier à la fin
Pour les 2 autres façons, l'ordi me demande avec quel programme ouvrir le fichier ? | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Sam 29 Oct 2016 - 21:46 | |
| Chez moi, ça marche parfaitement. Voici la clé créée selon tes prescriptions: Un clic droit sur le fichier BAS du programme suivant: - Code:
-
' test_clic_droit.bas
dim f$
f$ = param_value$(1) message f$
end donne ceci: Le chemin est donné en nom court format DOS 8.3. | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Sam 29 Oct 2016 - 21:53 | |
| Est ce le faite que le programme soit sur un disque D: ? le Principal en tous cas montre que cela fonctionne ! On peut donc facilement demander l'encodage d'un EXE depuis Windows. C'était le but de cette démarche. Je vais quand même tenter de trouver pourquoi cela ne fonctionne pas chez moi. Merci Klaus | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Sam 29 Oct 2016 - 22:14 | |
| Pas de problème, Minibug. Essaie déjà de placer le programme sur C:. Comme tu peux voir, dans le chemin vers mon programme test, il y a plusieurs dossiers dont les noms contiennent des espaces, et pourtant ça marche sans les guillemets. L'important, c'est l'espace avant le %1. | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Dim 30 Oct 2016 - 9:26 | |
| Bonjour Klaus Après plusieurs tests, j'ai l'impression que la transmission du paramètre est tronqué. J'ai configuré la ligne de commande comme cela : ["C:\creat.exe" %1\] Les 2 fichiers suivant sont placés à la racine de [C:] : Fichier 1 : KAL4Cop.baslors du clic droit sur le fichier : Puis affichage du chemin : Fichier 2 : KALORIK 4.baslors du clic droit sur le fichier : Et si je modifie la ligne de commande comme cela : ["C:\creat.exe" %1] Fichier 1 :Le programme KAL4Cop.bas se lance automatiquement ! Fichier 2 : Me renvoie le chemin [C:\KALORIK] alors que je devrai avoir [C:\KALORIK 4.bas] | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Dim 30 Oct 2016 - 9:36 | |
| Je ne comprends pas pourquoi tu dets des guillemets dans la valeur de ta clé de registre. Regarde ma capture - il n'y a pas de guillemets ! | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Dim 30 Oct 2016 - 9:48 | |
| avec ou sans cela ne change rien. le résultat est le même !
Si je modifie la ligne de commande comme cela : [C:\creat.exe %1]
Fichier 1 :Le programme KAL4Cop.bas se lance automatiquement !
Fichier 2 : Me renvoie le chemin [C:\KALORIK] alors que je devrai avoir [C:\KALORIK 4.bas] | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Dim 30 Oct 2016 - 10:00 | |
| En tout cas, au début de ton post: tu dis: - Citation :
- Bonjour Klaus
Après plusieurs tests, j'ai l'impression que la transmission du paramètre est tronqué. J'ai configuré la ligne de commande comme cela : ["C:\creat.exe" %1\]
Or, il y a un \ en trop. C'est ce qui provoque l'erreur sur la syntaxe du nom de fichier. J'ai réessayé. Avec - Citation :
- Ouvrir [HKEY_CLASSES_ROOT]
Ouvrir [SystemFileAssociations] Ouvrir ou nouvelle clé [.bas] nouvelle clé [shell] nouvelle clé ["texte du menu a rajouter"] nouvelle clé [command] modifier la valeur par défaut [C:\chemin_complet\programme.exe %1] ça marche. Regarde l'absence des guillemets et des \. | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Dim 30 Oct 2016 - 10:09 | |
| Oui Klaus je sais bien mais comme cela ne fonctionne pas je teste plein de possibilités.
J'avais vu hier mais je n'ai pas gardé la page, une version du chemin ou il y avait des \ qui étaient collés 2 a 2. Genre ["C:\\chemin\\programme.exe\" "%1"\] mais je sais plus exactement...
| |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Dim 30 Oct 2016 - 10:30 | |
| Je suis perplexe. Est-ce que ton arborescence de registre ressemble à la mienne ? | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Dim 30 Oct 2016 - 10:37 | |
| Oui moi aussi.
De toutes manières j'ai compris le principe et c'était là le défi. Je vais abandonner les recherches car cela n'a rien d'important.
Je te remercie pour ton aide et ta disponibilité. Bon Dimanche ! | |
|
| |
pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Dim 30 Oct 2016 - 12:35 | |
| bjr Je reprend ton explication klaus il ne doit pas y avoir des barre obliques "\" mais des trémas "C:\chemin_complet\programme.exe" "%1" A ce propos je vous ai déjà présenté un logiciel pour faire cela bon week end | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Dim 30 Oct 2016 - 13:40 | |
| - Citation :
- il ne doit pas y avoir des barre
obliques "\" mais des trémas Que veux-tu dire par là ? Peux-tu donner un exemple ? - Citation :
- A ce propos je vous ai déjà présenté un logiciel
pour faire cela Peux-tu redonner le lien, stp ? J'ai essayé une dizaine de freewares, mais tous, sous W10 au moins, si jamais ils marchent, ont un gros inconvénient: un ficher BAS ou TXT peut être visé facilement, mais un fichier d'un autre format produit une erreur Panoramic en ligne 1, comme si Panoramic tentait à exécuter le fichier au lieu de simplement recevoir le chemin et nom dans le premier paramètre. Voici mon code Panoramic: - Code:
-
dim f$ f$ = param_value$(1) message f$ terminate
Avec un fichier EXE, DLL, DAT, HTML etc, il y a erreur en ligne 1. Un fichier BAS passe bien et le programme affiche le chemin etle nom. | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Dim 30 Oct 2016 - 14:24 | |
| Bonjour Pascal10000 Les infos que j'ai publiés en début de post viennent de plusieurs forums et sites. De plus cela fonctionne bien chez Klaus. Le problème ne vient pas de la 'structure' même de la commande mais plutôt de la manière dont Windows la traite. D'ailleurs je reléve ton message klaus : - Citation :
- un fichier d'un autre format produit une erreur Panoramic en ligne 1, comme si Panoramic tentait à exécuter le fichier au lieu de simplement recevoir le chemin et nom dans le premier paramètre.
Cela corresponds aussi à un problème que je rencontre dans certains format de la commande. | |
|
| |
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows Dim 30 Oct 2016 - 14:55 | |
| - Minibug a écrit:
- Il est dit que Si ce dernier est écrit en C, ce nom de fichier se retrouve dans les arguments de la fonction main ou WinMain.
Donc la difficulté c'est comment trouvé cela dans Panoramic - Code:
-
message param_value$(0)
Donne le nom du fichier - Code:
-
message param_value$(n)
Donne le Nième paramètre si il existe. | |
|
| |
Contenu sponsorisé
| Sujet: Re: Récupérer nom fichier sur clic droit menu contextuel Windows | |
| |
|
| |
| Récupérer nom fichier sur clic droit menu contextuel Windows | |
|