Comment puis-je ajouter un élément au nouveau menu contextuel?

117

Lorsque je clique avec le bouton droit de la souris, je reçois la possibilité d’ajouter un nouveau fichier avec une extension spécifiée. Je voudrais ajouter des fichiers personnalisés dans ce menu, afin que je puisse faire un clic droit et créer un nouveau fichier PHP par exemple.

Comment puis-je faire ceci?

Thêta30
la source
Essayez le nouvel outil d'édition de menus inclus dans Right Click Enhancer à l' adresse rbsoft.org/downloads/right-click-enhancer
Ravi Patel
2
Si vous rencontrez des problèmes pour ajouter une toute nouvelle extension de fichier (plutôt que pour simplement ajouter NullFile/ FileNameà une entrée existante) dans Windows 7, consultez cette autre question ... superuser.com/questions/588647/…
MrWhite
2
Le site de Ramesh est une bonne source pour ajouter manuellement des entrées.
Synetech

Réponses:

64

Pour ajouter des extensions de votre choix à la liste: créez un fichier, ajoutez le contenu ci-dessous, enregistrez-le sous le nom any.reg et exécutez-le.

Remarque : remplacez .png par l'extension de fichier que vous souhaitez ajouter et remplacez ce que vous voulez par ce que vous voulez.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.png\ShellNew]
"NullFile"=""

La source

thdude
la source
4
S'il vous plaît envisager lien pourriture .
Mehper C. Palavuzlar
1
Bon appel. Réponse modifiée :)
th3dude
1
+1, cela fonctionne. Comment pouvons-nous avoir un nom de fichier personnalisé comme "index.php" au lieu de "New PHP file.php"?
fedmich
1
J'ai dû exécuter le .regfichier deux fois pour le faire fonctionner. Merci pour cette réponse.
Akash
3
N'a pas fonctionné pour moi dans Windows 10, 1709 :( Explorateur redémarré et machine redémarrée même, toujours ...
Arete
66

Une dernière chose:

Si vous souhaitez ajouter un fichier en tant que modèle pour le nouvel élément, utilisez

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\.html\ShellNew]
"FileName"="html.html"

puis placez le fichier (html.html) dans:

  • Pour votre propre profil: %Userprofile%\Templates
  • Pour tous les utilisateurs: %Allusersprofile%\Templates
  • Pour tout le système: %Systemroot%\ShellNew

Encore un détail: si vous souhaitez supprimer l’ entrée "Windows Live Call" , utilisez:

[-HKEY_CLASSES_ROOT\.wlcshrtctv2\LiveCall\ShellNew]
Eduardo Molteni
la source
Cool pensée, capable d'utiliser un fichier comme modèle!
Clay Nichols
1
Dans le cas où quelqu'un se poserait la question, l' FileNameentrée semble remplacer l' NullFileentrée mentionnée dans d'autres réponses. Vous ne semblez pas avoir besoin de supprimer une NullFilevaleur existante . Cependant, avoir les deux entrées semble confondre certains autres utilitaires tiers, tels que ShellMenuNew de NirSoft . (Windows 7)
MrWhite
2
Je ne pense pas que cela doit être dans% Userprofile% Templates, etc. si vous donnez le nom de chemin complet au fichier.
Jiggunjer
3
Que dois-je faire si je veux créer deux raccourcis vers deux modèles différents pour le même programme? Par exemple, j'ai parfaitement utilisé cette méthode pour créer un élément de menu contextuel pour un modèle "article" pour TeXworks. Je souhaite maintenant également ajouter un modèle "modified_article" pour TeXworks. Puis-je ajouter les deux au menu contextuel? Merci!
Prahar
3
Dans Windows 8.1, les dossiers de modèles que vous avez répertoriés ne fonctionnent pas. Je reçois une erreur "accès refusé". Où modèles devrait être est maintenant un dossier de raccourci appelé une "jonction" apparemment - et il est un fichier caché "spécifique du système d'exploitation". Par conséquent, le dossier Modèles est maintenant déplacé. Voir ce lien pour la nouvelle cartographie ( jimmah.com/vista/Security/junctions.aspx ). Apparemment, c'est maintenant C:\Users\USER_NAME\AppData\Roaming\Microsoft\Windows\Templatespour votre propre profil, par exemple.
Gabriel Staples
19

ShellNewHandler m'a aidé à restaurer mon menu du shell Windows 7> Nouveau> entrée de document txt.

entrez la description de l'image ici

  1. Décocher .txt
  2. Cliquez sur Appliquer
  3. Vérifiez .txt
  4. Cliquez sur Appliquer
Eric
la source
2
Est-ce que cela vous permet d'ajouter de nouvelles entrées? D'après les captures d'écran et la description, il ne semble pas.
MrWhite
2
cela ne vous permet PAS d'ajouter des entrées ... donc, cela n'a aucun rapport avec le sujet.
Eric Sebasta
18

Allez dans l'éditeur de registre et développez HKEY_CLASSES_ROOT

Aller à .file_extention

et créez une clé appelée ShellNew

À l'intérieur de cela, créez une nouvelle clé de chaîne appelée NullFile sans valeur

Par exemple, si je voulais créer une nouvelle entrée pour un objet .wil vierge *, je créerais

[HKEY_CLASSES_ROOT\.wil\ShellNew]
NullFile = ""

* Si l'extension de fichier telle que .wil n'existe pas, je créerais d'abord un fichier avec cette extension et double-cliquer dessus. Ouvrez-le avec le programme de mon choix car cela créerait les autres clés de registre nécessaires et faciliterait votre travail.

William Hilsum
la source
2
Je ne travaille pas sous Windows 10, j'ai aussi trouvé cet article, mais cela ne fonctionne pas non plus: askvg.com/how-to-add-remove-items-from-new-menu-in-windows
Neo
5

Pour supprimer des entrées de la liste, voici un programme qui vous permet d'activer / désactiver les entrées d'une interface graphique. Beaucoup plus facile que de chercher dans le registre!

Malheureusement, cela ne vous permet pas d'ajouter des entrées.

Blorgbeard
la source
C'est exactement ce dont j'avais besoin, merci! En général, tout ce dont vous avez besoin, c'est d'un «nouveau document texte» ...
Andrew, le
5

Aucune de ces méthodes ne fonctionnait pour moi dans Windows 10.

J'ai finalement trouvé cette page expliquant que vous devez référencer une autre clé contenant le nom et l'icône par défaut.

C'est le minimum nécessaire pour créer une entrée, mais elle n'aura pas d'icône.

REMARQUE: la troisième entrée concerne un nouveau fichier texte de clé référencé dans la valeur (par défaut) de .txt.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.txt]
@="textfile"

[HKEY_CLASSES_ROOT\.txt\ShellNew]
"NullFile"=""

[HKEY_CLASSES_ROOT\textfile]
@="Text Document"

Voici deux manières de spécifier une icône

  1. Dites à Explorer d'utiliser l'icône par défaut pour le type de contenu:
[HKEY_CLASSES_ROOT\.txt] 
@="textfile" 
"Content Type"="text/plain"
"PerceivedType"="text"

ou 2. Spécifiez une icône sous textfile comme ceci:

[HKEY_CLASSES_ROOT\textfile\DefaultIcon]
@="%SystemRoot%\\system32\\imageres.dll,-102"

Oh, et au moins pour moi, il suffit de fermer et de rouvrir Explorer (assurez-vous de fermer toutes les instances) pour recharger le menu contextuel. Vous n'avez pas besoin de redémarrer la machine entière.

sous-homme
la source
À mes côtés "Notepad ++" a changé le HKEY_CLASSES_ROOT\.txtà @="Notepad++_file". Donc, ajouter HKEY_CLASSES_ROOT\Notepad++_fileavec a @="Textfile"fait le tour. Merci, bonne trouvaille!
Tino
4

Vous n'avez pas précisé la version de Windows que vous utilisez. Si vous utilisez XP, vous pouvez télécharger le TweakUI PowerToy de Microsoft (également couvert dans Wikipedia ). Cliquez sur Modèles et ajoutez / supprimez des types de fichiers au contenu de votre coeur. Voici à quoi ça ressemble: entrez la description de l'image ici

Utilisateur5910
la source
3

Il semble que les autres solutions ici sont obsolètes. Au moins, aucune de ces solutions ne fonctionnait pour moi dans Windows 10 v. 1709 Build 16299.192 ( Edit : fonctionne toujours dans la version 1809). J'ai effectué des tests sur une machine virtuelle et voici ce qui fonctionne dans Windows 10 1709 à compter du 2018.01.12:

Ajoutez le fichier de registre:

Créez un nouveau fichier de registre avec le contenu suivant:

Windows Registry Editor Version 5.00

; new file type
[HKEY_CLASSES_ROOT\.xyz]
@="xyz"

; template
[HKEY_CLASSES_ROOT\.xyz\ShellNew]
"FileName"=""

; file type name
[HKEY_CLASSES_ROOT\xyz]
@="XYZ test file"

Remplacez xyzpar l'extension que vous souhaitez ajouter. Et remplacez-le XYZ test filepar le nom de l'extension de fichier (par exemple, un fichier .scss serait "fichier de feuille de style syntaxiquement génial"). Si vous souhaitez utiliser un fichier de modèle, reportez-vous à l'explication ci-dessous.

Il peut être nécessaire de redémarrer Windows Explorer après avoir ajouté le fichier de registre. Vous pouvez redémarrer explorer.exe en tapant ce qui suit dans CMD:

taskkill /f /im explorer.exe & start explorer.exe

entrez la description de l'image ici

entrez la description de l'image ici


Explication du code:

[HKEY_CLASSES_ROOT\.xyz]
@="xyz"

Va créer un nouveau type de fichier dans le registre.

[HKEY_CLASSES_ROOT\.xyz\ShellNew]
"FileName"=""

Cela vous permettra d'utiliser un modèle pour tous les nouveaux fichiers de ce format. Nous pourrions par exemple écrire "template.xyz"et créer un nouveau fichier appelé «template.xyz» et l'utiliser comme modèle. Ainsi, chaque fois que vous créez un nouveau fichier, il contient du contenu prédéfini. Comme Eduardo Molteni a mentionné les chemins pour les fichiers de modèle sont: %Userprofile%\Templates, %Allusersprofile%\Templatesou pour l'ensemble du système %Systemroot%\ShellNew. Dans cet exemple, nous n'avons spécifié aucun nom de modèle car nous ne souhaitons en utiliser aucun.

[HKEY_CLASSES_ROOT\xyz]
@="XYZ test file"

Ce sera le nom du type de fichier pour le menu contextuel et les fichiers nouvellement créés. Autant que je sache, laisser cette valeur à blanc ne fonctionne pas.

Icône:

L'icône est ajoutée une fois que Windows a associé un logiciel au type de fichier.

Arête
la source
1
Super réponse, merci. S'il vous plaît noter dans Windows 10, %userprofile%\Templatesa déménagé %appdata%\Microsoft\Windows\Templateset %Allusersprofile%\Templatesa déménagé à%programdata%\Microsoft\Windows\Templates
TheImirOfGroofunkistan
2

Créez un fichier texte brut et ajoutez-y la ligne suivante:


Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.txt\ShellNew]
"NullFile"=""

Enregistrez le fichier et renommez son extension en un fichier .reg. Par exemple, "myNewItem.reg". Assurez-vous que vous avez renommé l'extension et pas seulement le nom du fichier comme (myNewItem.reg.txt).

Double-cliquez sur le fichier et votre registre sera mis à jour.

La prochaine étape, et cela est très important, redémarrez votre ordinateur directement. N'essayez donc pas d'ouvrir le menu de contenu pour voir s'il fonctionne déjà! Commencez par redémarrer votre ordinateur.

Si vous ouvrez le menu de contenu pour voir si votre nouvel élément étonnant est déjà répertorié, le registre sera restauré ...

Essayez également ce programme: http://sourceforge.net/projects/shellnewhandler/

Bnutoswa
la source
si je redémarre immédiatement ou non, je ne parviens pas à faire fonctionner cela dans Windows 8.1. Aucune idée pourquoi.
Gabriel Staples
1

La clé de registre:

HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Discardable\PostSetup\ShellNew

ne peut pas être modifié pour accomplir ce qui est affiché ou non dans le menu contextuel "Nouveau". Si vous modifiez cette valeur, Explorer la remplacera la prochaine fois que vous cliquerez avec le bouton droit de la souris pour afficher le menu contextuel "Nouveau". Essayez et vous verrez ce que je veux dire.

WoodyElf
la source
0

Toutes ces informations sont officiellement documentées par Microsoft . normalement destiné aux développeurs qui enregistrent leurs propres nouveaux types de fichiers.

Extension du nouveau sous-menu

Lorsqu'un utilisateur ouvre le menu Fichier dans l'Explorateur Windows, la première commande est Nouveau . La sélection de cette commande affiche un sous-menu. Par défaut, il contient deux commandes, Dossier et Raccourci , permettant aux utilisateurs de créer des sous-dossiers et des raccourcis. Ce sous-menu peut être étendu pour inclure des commandes de création de fichier pour tout type de fichier.

Pour ajouter une commande de création de fichier au sous - menu Nouveau , les fichiers de votre application doivent être associés à un type de fichier . Incluez une sous-clé ShellNew sous la clé pour l'extension de nom de fichier. Lorsque la commande Nouveau du menu Fichier est sélectionnée, le shell l’ajoute au sous - menu Nouveau . La chaîne d'affichage de la commande sera la chaîne descriptive affectée au ProgID du programme.

Attribuez une ou plusieurs valeurs de données à la sous-clé ShellNew pour spécifier la méthode de création de fichier. Les valeurs disponibles suivent.

  • Command: Exécute une application. C'est une valeur REG_SZ spécifiant le chemin de l'application à exécuter. Par exemple, vous pouvez le configurer pour lancer un assistant.
  • Data: Crée un fichier contenant les données spécifiées. Données est une valeur REG_BINARY avec les données du fichier. Les données sont ignorées si NullFile ou FileName est spécifié.
  • FileName: Crée un fichier qui est une copie d'un fichier spécifié. NomFichier est une valeur REG_SZ , définie sur le chemin complet du fichier à copier.
  • NullFile: Crée un fichier vide. NullFile ne reçoit pas de valeur. Si NullFile est spécifié, les valeurs Data et FileName sont ignorées.

Et exemple créer un nouveau fichier vide mpy :

HKEY_CLASSES_ROOT
  (Default) = MyProgram.1
  MyProgram.1
   .myp
      ShellNew
         NullFile

Pour créer un nouveau fichier basé sur un fichier de modèle spécifique:

HKEY_CLASSES_ROOT
   .myp
      (Default) = MyProgram.1
      MyProgram.1
         ShellNew
            FileName: REG_SZ = "%ProgramData%\Microsoft\Windows\Templates\MyNewTemplate.myp"
Ian Boyd
la source