OVH Cloud OVH Cloud

Menu contextuel

9 réponses
Avatar
Heffgé
Bonjour,

Je sais ajouter une ligne dans le menu contextuel d'un dossier apparaissant
dans l'Explorateur afin d'exécuter un script, mais je n'ai pas trouvé
comment faire pour un fichier. Je suis sous Win 98 SE.

Je voudrais que cette ligne apparaisse quel que soit le type de fichier mais
l'assistant Type de fichier impose de donner une extension. J'ai essayer en
mettant le caractère * mais, bien qu'il semble accepté, ça ne marche pas.

En m'inspirant des indications données par JCB sur son site, j'ai aussi
essayé d'ajouter deux clefs view et view/command sous HKCR/file/shell mais
sans plus de succès.

Y'a-t-il vraiment une solution ?

Merci d'avance pour vos suggestions.

Heffgé

9 réponses

Avatar
Heffgé
Suite du feuilleton.

En tatonnant, j'ai fini par trouver une solution. J'ai crée sous la clef
HKCR/*/Shell une clef avec un nom quelconque ayant en valeur par défaut le
libellé à faire apparaître dans le menu contextuel, et une sous-clef command
avec le nom de mon script en valeur par défaut.

L'inconvénient est que ce libellé est en tête de liste dans le menu
contextuel et il est affiché en gras pour certains types de fichier.

Y'a-t-il moyen de faire plus élégant ?

Merci d'avance pour vos suggestions.

Heffgé
Avatar
Jean-Claude BELLAMY
Dans le message :,
Heffgé a pris la peine d'écrire ce qui suit :
Bonjour,

Je sais ajouter une ligne dans le menu contextuel d'un dossier
apparaissant dans l'Explorateur afin d'exécuter un script, mais je
n'ai pas trouvé comment faire pour un fichier. Je suis sous Win 98 SE.

Je voudrais que cette ligne apparaisse quel que soit le type de
fichier mais l'assistant Type de fichier impose de donner une
extension. J'ai essayer en mettant le caractère * mais, bien qu'il
semble accepté, ça ne marche pas.


Évidemment, si tu passes par une interface de newbie, ne t'attends pas à des
merveilles ! ;-)

En m'inspirant des indications données par JCB sur son site, j'ai
aussi essayé d'ajouter deux clefs view et view/command sous
HKCR/file/shell mais sans plus de succès.

Y'a-t-il vraiment une solution ?


Et HKCR* ?
Cela ne te convient pas ?


--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP]
http://www.bellamyjc.org ou http://jc.bellamy.free.fr

Avatar
Heffgé
Bonjour Jean-Claude BELLAMY,

a écrit dans le message de news:


Évidemment, si tu passes par une interface de newbie, ne t'attends pas à
des

merveilles ! ;-)


Ben ça marche pour un dossier, j'ai tenté ma chance pour les fichiers.

Et HKCR* ?
Cela ne te convient pas ?


Si, mais comme je le dis dans mon deuxième message je ne trouve pas ça très
élégant d'avoir mon truc en tête. Comme je suis loin de maîtriser mais que
j'aime bien les choses propres, je me demandais s'il était possible de
faire mieux.

Tout ça pour apporter une réponse plus satisfaisante que celles déjà données
à un problème d'affichage du nom complet d'un fichier, évoqué dans le forum
sur Windows 98.

Cordialement.

Heffgé

Avatar
Gilles LAURENT
"Heffgé" a écrit dans le message de
news:

Bonjour,

| Si, mais comme je le dis dans mon deuxième message je ne trouve pas
| ça très élégant d'avoir mon truc en tête. Comme je suis loin de
| maîtriser mais que j'aime bien les choses propres, je me demandais
| s'il était possible de faire mieux.

Bien sûr, en écrivant un nouveau gestionnaire de menu contextuel
(Context Menu Handler). Le nouvel élément du menu apparaîtra dans ce cas
dans la seconde partie du menu contextuel. Les interfaces nécessaires
sont documentées ici :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/shell/programmersguide/shell_int/shell_int_extending/extensionhandlers/contextmenuhandlers.asp

--
Gilles LAURENT
http://glsft.free.fr
Avatar
Heffgé
"Gilles LAURENT" a écrit dans le message de news:
#
"Heffgé" a écrit dans le message de
news:

Bonjour,

Bien sûr, en écrivant un nouveau gestionnaire de menu contextuel
(Context Menu Handler). Le nouvel élément du menu apparaîtra dans ce cas
dans la seconde partie du menu contextuel. Les interfaces nécessaires
sont documentées ici :

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/pla

tform/shell/programmersguide/shell_int/shell_int_extending/extensionhandlers
/contextmenuhandlers.asp

--
Gilles LAURENT


Merci Gilles LAURENT pour cette suggestion qui est certainement la solution
la plus canonique mais dont la mise en oeuvre n'est pas à la portée de mes
maigres compétences.

Le problème initial était de pouvoir faire un copier-coller du nom d'un
fichier, chemin compris, l'Explorateur Windows ne permettant pas de le faire
en une seule passe. Il existe des logiciels tout faits qui permettent
d'adjoindre cette fonction aux menus contextuels mais je souhaitais trouver
une réponse à la MacGyver et celle que j'ai apportée suffira (associer un
script à la clef command sous HKCR*Shelltoto). J'en ai même deux, une
rustique et une autre plus marteau-pilon.

La rustique :
nom_fic = InputBox("Crtr + C pour copier le nom du fichier", "Nom complet",
wscript.arguments(0))

Le marteau-pilon :
With CreateObject("internetexplorer.application")
.Navigate "about:blank"
.Document.ParentWindow.ClipboardData.SetData "Text",
wscript.arguments(0)
.Quit
End With

Heffgé

Avatar
Gilles LAURENT
"Heffgé" a écrit dans le message de
news:

[...]
| Le problème initial était de pouvoir faire un copier-coller du nom
| d'un fichier, chemin compris, l'Explorateur Windows ne permettant pas
| de le faire en une seule passe. Il existe des logiciels tout faits
| qui permettent d'adjoindre cette fonction aux menus contextuels mais
| je souhaitais trouver une réponse à la MacGyver et celle que j'ai
| apportée suffira.
[...]

Il suffit d'envoyer le fichier ou le dossier vers ... ToClip ;-)
http://www.fullspan.com/proj/toclip/index.html

--
Gilles LAURENT
http://glsft.free.fr
Avatar
Jacques Barathon [MS]
Pour info (même si c'est hors sujet puisque votre poste est sous Win98 SE),
l'option est maintenant en natif sous Vista, dans le menu contextuel du
shift + clic droit.

Jacques

"Heffgé" wrote in message
news:
"Gilles LAURENT" a écrit dans le message de news:
#
"Heffgé" a écrit dans le message de
news:

Bonjour,

Bien sûr, en écrivant un nouveau gestionnaire de menu contextuel
(Context Menu Handler). Le nouvel élément du menu apparaîtra dans ce cas
dans la seconde partie du menu contextuel. Les interfaces nécessaires
sont documentées ici :

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/pla

tform/shell/programmersguide/shell_int/shell_int_extending/extensionhandlers
/contextmenuhandlers.asp

--
Gilles LAURENT


Merci Gilles LAURENT pour cette suggestion qui est certainement la
solution
la plus canonique mais dont la mise en oeuvre n'est pas à la portée de mes
maigres compétences.

Le problème initial était de pouvoir faire un copier-coller du nom d'un
fichier, chemin compris, l'Explorateur Windows ne permettant pas de le
faire
en une seule passe. Il existe des logiciels tout faits qui permettent
d'adjoindre cette fonction aux menus contextuels mais je souhaitais
trouver
une réponse à la MacGyver et celle que j'ai apportée suffira (associer un
script à la clef command sous HKCR*Shelltoto). J'en ai même deux, une
rustique et une autre plus marteau-pilon.

La rustique :
nom_fic = InputBox("Crtr + C pour copier le nom du fichier", "Nom
complet",
wscript.arguments(0))

Le marteau-pilon :
With CreateObject("internetexplorer.application")
.Navigate "about:blank"
.Document.ParentWindow.ClipboardData.SetData "Text",
wscript.arguments(0)
.Quit
End With

Heffgé





Avatar
JF
*Bonjour Heffgé* !
(news:)

Le problème initial était de pouvoir faire un copier-coller du nom d'un
fichier, chemin compris, l'Explorateur Windows ne permettant pas de le faire
en une seule passe. Il existe des logiciels tout faits qui permettent
d'adjoindre cette fonction aux menus contextuels mais je souhaitais trouver
une réponse à la MacGyver et celle que j'ai apportée suffira (associer un
script à la clef command sous HKCR*Shelltoto). J'en ai même deux, une
rustique et une autre plus marteau-pilon.

La rustique :
nom_fic = InputBox("Crtr + C pour copier le nom du fichier", "Nom complet",
wscript.arguments(0))

Le marteau-pilon :
With CreateObject("internetexplorer.application")
.Navigate "about:blank"
.Document.ParentWindow.ClipboardData.SetData "Text",
wscript.arguments(0)
.Quit
End With

Heffgé


Avec l'arrivée d'IE7 l'utilisation de IE est devenue problématique,
puisqu'il faut diminuer la sécurité pour éviter le message
"Voulez-vous autoriser l'accès de cette page Web au presse-papier?"

Pour les manipulations du Clipboard, j'utilise à présent :
Console Clipboard Utilities by Karl E. Peterson
www.mvps.org/tools
http://vb.mvps.org/tools/ConClip

Pour copier les chemins des fichiers et dossiers
à l'aide d'un Menu Contextuel, j'utilise CLIPNAME
www.gratilog.net/fichier2.htm


--
Salutations, Jean-François
Index du site de PN : www.d2i.ch/pn/az
Outlook Express : Suivez vos fils avec [CTL+H]
Montrez-nous ce que vous voyez : http://fspsa.free.fr/copiecran.htm

Avatar
Heffgé
Merci à Jacques Barathon, Gilles LAURENT et JF pour ces indications et ces
liens. Je transmet aux initiateurs de cette question.

Je constate que ce problème de recopie du nom complet d'un fichier devait
être bien réel puisque des logiciels ont été crées afin de pouvoir le
résoudre et que Vista incorpore une fonction qui permet d'effectuer cette
opération élémentaire.

Heffgé