Wie kann ich ein Element zum 'neuen' Kontextmenü hinzufügen?

126201
Theta30

Wenn ich irgendwo mit der rechten Maustaste klicke, kann ich eine neue Datei mit der angegebenen Erweiterung hinzufügen. Ich möchte einige benutzerdefinierte Dateien in dieses Menü einfügen, sodass ich mit der rechten Maustaste klicken und beispielsweise eine neue PHP-Datei erstellen kann.

Wie kann ich das machen?

114
Probieren Sie das neue Menü-Editor-Tool aus, das in Right Click Enhancer unter http://rbsoft.org/downloads/right-click-enhancer enthalten ist Ravi Patel vor 11 Jahren 0
Wenn Sie Probleme beim Hinzufügen einer völlig neuen Dateierweiterung haben (anstatt lediglich NullFile / Dateiname zu einem vorhandenen Eintrag hinzuzufügen) in Windows 7, dann lesen Sie diese andere Frage ... http://superuser.com/questions/ 588647 / cant-add-new-items-to-windows-7-new-context-menu MrWhite vor 10 Jahren 1
[Ramesh-Site] (http://windowsxp.mvps.org/shellnewadd.htm) ist eine gute Quelle zum manuellen Hinzufügen von Einträgen. Synetech vor 10 Jahren 1

10 Antworten auf die Frage

63
Eduardo Molteni

One more thing:

If you want to add a file as a template for the new item, use

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

and then place the file (html.html) in:

  • For your own profile: %Userprofile%\Templates
  • For all users: %Allusersprofile%\Templates
  • For the whole system: %Systemroot%\ShellNew

One more detail: if you want to delete the "Windows Live Call" entry, use:

[-HKEY_CLASSES_ROOT\.wlcshrtctv2\LiveCall\ShellNew] 
Cooler Gedanke, um eine Datei als Vorlage verwenden zu können! Clay Nichols vor 13 Jahren 0
Falls sich jemand wundert, scheint der Eintrag `FileName` den in anderen Antworten erwähnten` NullFile`-Eintrag zu überschreiben. Sie müssen scheinbar keinen vorhandenen NullFile-Wert löschen. Beide Einträge scheinen jedoch einige andere Dienstprogramme von Drittanbietern zu verwirren, wie [ShellMenuNew] von NirSoft (http://www.nirsoft.net/utils/shell_menu_new.html). (Windows 7) MrWhite vor 10 Jahren 1
Ich denke nicht, dass es in% Userprofile% Templates usw. sein muss, wenn Sie der Datei den gesamten Pfadnamen geben. jiggunjer vor 8 Jahren 2
Was mache ich, wenn ich zwei Verknüpfungen zu zwei verschiedenen Vorlagen für dasselbe Programm erstellen möchte? Zum Beispiel habe ich diese Methode perfekt verwendet, um ein Kontextmenüelement für eine "Artikel" -Vorlage für TeXworks zu erstellen. Ich möchte jetzt auch eine Vorlage "modified_article" für TeXworks hinzufügen. Kann ich beides zum Kontextmenü hinzufügen? Vielen Dank! Prahar vor 7 Jahren 3
@Prahar Das ist eine [neue Frage] (https://superuser.com/questions/ask), die Sie [separat] stellen sollten (https://superuser.com/questions/ask) Tobias Kienzler vor 7 Jahren 0
In Windows 8.1 funktionieren die von Ihnen aufgelisteten Vorlagenordner nicht. Ich erhalte die Fehlermeldung "Zugriff verweigert". Wo Templates sein sollten, ist jetzt ein Verknüpfungsordner, der anscheinend "Junction" genannt wird - und es ist eine versteckte "betriebssystemspezifische" Datei. Daher wird der Ordner Vorlagen jetzt verschoben. Unter diesem Link finden Sie die neue Zuordnung (https://jimmah.com/vista/Security/junctions.aspx). Anscheinend ist es jetzt beispielsweise "C: \ Users \ USER_NAME \ AppData \ Roaming \ Microsoft \ Windows \ Templates" für Ihr eigenes Profil. Gabriel Staples vor 7 Jahren 1
... aber ich kann deine Antwort trotzdem nicht für mich arbeiten lassen. Ich weiß nicht warum. Gabriel Staples vor 7 Jahren 0
Wenn Sie anstelle von NullFile einen Dateinamen angeben, sucht das System unter% windir% \ ShellNew nach einer Vorlagendatei mit diesem Namen. Das Verzeichnis auf meinem System enthält beispielsweise EXCEL12.XLSX, und der Registrierungseintrag gibt den Dateinamen REG_SZ excel12.xlsx an trindflo vor 6 Jahren 0
Ich möchte nur hinzufügen, dass seine Werke sogar für [Syspreping] (https://docs.microsoft.com/de-de/windows-hardware/manufacture/desktop/sysprep--generalize--a-windows-installation) verwendet werden Legen Sie die Vorlage in "C: \ Benutzer \ Administrator \ AppData \ Roaming \ Microsoft \ Windows \ Templates" Arete vor 6 Jahren 0
62
th3dude

So fügen Sie der Liste Erweiterungen Ihrer Wahl hinzu: Erstellen Sie eine Datei, fügen Sie den folgenden Inhalt hinzu, speichern Sie ihn unter " which.reg" und führen Sie ihn aus.

Hinweis : Ersetzen Sie .png durch die Dateierweiterung, die Sie hinzufügen möchten, und ersetzen Sie, was auch immer Sie möchten.

Windows Registry Editor Version 5.00  [HKEY_CLASSES_ROOT\.png\ShellNew] "NullFile"="" 

Quelle

Spot auf! +1 vor 14 Jahren 0
Bitte beachten Sie [link rot] (http://en.wikipedia.org/wiki/Link_rot). Mehper C. Palavuzlar vor 13 Jahren 3
Guten Anruf. Antwort bearbeitet :) th3dude vor 13 Jahren 1
Unter Windows 7 funktionierte dies nicht. Ich hatte zwei weitere vorhandene Schlüssel unter ".doc" (PersistentHandler und Word.Document.8.). Könnte das die Interaktion beeinträchtigen? Der Inhalt der .reg-Datei, die ich zu meinem Register hinzugefügt habe, war: Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT \ .doc \ ShellNew] "NullFile" = "" Clay Nichols vor 13 Jahren 0
@Clay: Hast du einen Neustart versucht? surfasb vor 12 Jahren 0
Dies funktionierte nicht für mich, als ich versuchte, eine .tex-Erweiterung für die LaTeX-Bearbeitung hinzuzufügen. Ich habe einen Neustart versucht. Lokathor vor 12 Jahren 0
+1, das funktioniert. Wie können wir einen benutzerdefinierten Dateinamen wie "index.php" anstelle von "New PHP file.php" haben? fedmich vor 11 Jahren 1
Ich musste die `.reg`-Datei zweimal ausführen, damit es funktioniert. Danke für diese Antwort. Akash vor 8 Jahren 1
Funktionierte nicht für mich in Windows 8.1 :( Ich habe es wiederholt versucht und auch neu gestartet. Gabriel Staples vor 7 Jahren 0
Funktionierte bei mir nicht in Windows 10, 1709 :( Neustart des Explorers und Neustart der Maschine sogar noch ... Arete vor 6 Jahren 2
18
William Hilsum

Gehen Sie zum Registrierungseditor und erweitern Sie HKEY_CLASSES_ROOT

Gehen Sie zu .file_extention

und erstellen Sie einen Schlüssel namens ShellNew

Erstellen Sie darin einen neuen String-Schlüssel namens NullFile ohne Wert

Wenn ich zum Beispiel einen neuen Eintrag für ein leeres * .wil-Objekt erstellen wollte, würde ich das erstellen

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

* Wenn die Dateierweiterung wie .wil nicht vorhanden ist, würde ich zuerst eine Datei mit dieser Erweiterung erstellen und darauf doppelklicken. Öffnen Sie es mit einem Programm meiner Wahl, da dies die anderen erforderlichen Registrierungsschlüssel erstellt und Ihre Arbeit erleichtert.

Funktioniert nicht unter Windows 10, auch ich habe diesen Artikel gefunden, aber das funktioniert auch nicht: http://www.askvg.com/how-to-add-remove-items-from-new-menu-in-windows/ Neo vor 7 Jahren 1
18
Eric

ShellNewHandler half mir bei der Wiederherstellung meines Windows 7-Shell-Menüs> Neu> TXT-Dokumenteintrag.

enter image description here

  1. Deaktivieren Sie .txt
  2. Klicken Sie auf Übernehmen
  3. Überprüfen Sie .txt
  4. Klicken Sie auf Übernehmen
Erlaubt das das Hinzufügen neuer Einträge? Aus den Screenshots und der Beschreibung erscheint es nicht. MrWhite vor 10 Jahren 2
Dies erlaubt Ihnen NICHT, Einträge hinzuzufügen ... also ist es für das Thema völlig irrelevant. Eric Sebasta vor 6 Jahren 2
5
Blorgbeard

Zum Entfernen von Einträgen aus der Liste finden Sie hier ein Programm, mit dem Sie Einträge über eine GUI aktivieren / deaktivieren können. Viel einfacher als das Durchsuchen der Registrierung!

Leider können Sie keine Einträge hinzufügen.

Genau das brauchte ich, danke! Im Allgemeinen ist alles, was Sie wirklich brauchen, "Neues Textdokument" ... Andrew vor 12 Jahren 0
4
User5910

Sie haben nicht gesagt, welche Windows-Version Sie verwenden. Wenn Sie XP verwenden, können Sie das TweakUI PowerToy von Microsoft herunterladen (auch in Wikipedia enthalten ). Klicken Sie auf Vorlagen und fügen Sie dem Inhalt Ihres Herzens Dateitypen hinzu. So sieht es aus:

3
subman

Keine dieser Methoden funktionierte für mich in Windows 10.

Ich habe schließlich diese Seite gefunden, auf der erklärt wurde, dass Sie auf einen anderen Schlüssel verweisen müssen, der den Namen und das Standardsymbol enthält.

Dies ist das Minimum, das zum Erstellen eines Eintrags erforderlich ist, es wird jedoch kein Symbol angezeigt.

HINWEIS: Der dritte Eintrag bezieht sich auf eine neue Schlüsseltextdatei, auf die im (Standard-) Wert von .txt verwiesen wird

Windows Registry Editor Version 5.00  [HKEY_CLASSES_ROOT\.txt] @="textfile"  [HKEY_CLASSES_ROOT\.txt\ShellNew] "NullFile"=""  [HKEY_CLASSES_ROOT\textfile] @="Text Document" 

Es gibt zwei Möglichkeiten, ein Symbol anzugeben

  1. Den Explorer anweisen, das Standardsymbol für den Inhaltstyp zu verwenden:
[HKEY_CLASSES_ROOT\.txt]  @="textfile"  "Content Type"="text/plain" "PerceivedType"="text" 

oder 2. Geben Sie ein Symbol unter der Textdatei an:

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

Oh, und zumindest für mich reicht es aus, den Explorer zu schließen und wieder zu öffnen (unbedingt alle Instanzen zu schließen), um das Kontextmenü erneut zu laden. Sie müssen nicht die gesamte Maschine neu starten.

An meiner Seite hat "Notepad ++" die "HKEY_CLASSES_ROOT \ .txt" in `@ =" Notepad ++ _-Datei "` geändert. Das Hinzufügen von `HKEY_CLASSES_ROOT \ Notepad ++ _ file` mit` @ = "Textfile" `hat den Trick gemacht. Danke, guter Fund! Tino vor 6 Jahren 0
2
Bnutoswa

Create a plain text file and add the following line to it:


Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\.txt\ShellNew] "NullFile"="" 

Save the file and rename it's extention to a .reg file. E.g. "myNewItem.reg". Be sure that you renamed the extention and not only the file name like (myNewItem.reg.txt)

Double click the file and it will update your registry.

The next step, and that is very important, restart your computer directly. So DON'T try to open the content menu to see if it's already works! First restart you computer.

If you open the content menu to see if your amazing new item is already listed, the registry will be restored ...

Also try this program: http://sourceforge.net/projects/shellnewhandler/

Unabhängig davon, ob ich sofort neu starte oder nicht, kann ich dies unter Windows 8.1 nicht ausführen. Keine Ahnung warum. Gabriel Staples vor 7 Jahren 0
2
Arete

Es scheint, dass die anderen Lösungen hier veraltet sind. In Windows 10 v. 1709 Build 16299.192 funktionierte zumindest nichts davon für mich. Ich habe ein paar Tests in einer VM durchgeführt und dies funktioniert ab Windows 2018.01.12 in Windows 10 1709:

Fügen Sie die Registrierungsdatei hinzu:

Erstellen Sie eine neue Registrierungsdatei mit dem folgenden Inhalt:

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" 

Ersetzen Sie xyzdurch die Erweiterung, die Sie hinzufügen möchten. Und ersetzen Sie es XYZ test filemit dem Namen der Dateierweiterung (z. B. wäre eine .scss-Datei "syntaktisch fantastische Stylesheet-Datei"). Wenn Sie eine Vorlagendatei verwenden möchten, lesen Sie die nachstehenden Erläuterungen.

Möglicherweise muss Windows Explorer neu gestartet werden, nachdem Sie die Registrierungsdatei hinzugefügt haben. Sie können explorer.exe neu starten, indem Sie Folgendes in CMD eingeben:

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

enter image description here

enter image description here


Erklärung des Codes:

[HKEY_CLASSES_ROOT\.xyz] @="xyz" 

Erstellt einen neuen Dateityp in der Registrierung.

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

Auf diese Weise können Sie eine Vorlage für alle neuen Dateien dieses Dateiformats verwenden. Wir könnten zum Beispiel "template.xyz"eine neue Datei namens "template.xyz" schreiben und erstellen und diese als Vorlage verwenden. Jedes Mal, wenn Sie eine neue Datei erstellen, wird sie mit vorgefertigten Inhalten gefüllt. Als Eduardo Molteni die Pfade für die Vorlagendateien genannt: %Userprofile%\Templates, %Allusersprofile%\Templatesoder für das gesamte System %Systemroot%\ShellNew. In diesem Beispiel haben wir keinen Vorlagennamen angegeben, da wir keinen verwenden möchten.

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

Dies ist der Name des Dateityps sowohl für das Kontextmenü als auch für die neu erstellten Dateien. Soweit ich weiß, funktioniert das Leerzeichen nicht.

Symbol:

Das Symbol wird hinzugefügt, sobald Windows dem Dateityp eine Software zugeordnet hat.

Tolle Antwort, danke. Bitte beachten Sie, dass in Windows 10 `% userprofile% \ Templates` nach% appdata% \ Microsoft \ Windows \ Templates` und`% Allusersprofile% \ Templates` nach `% programdata% \ Microsoft \ Windows \ Templates` verschoben wurde TheImirOfGroofunkistan vor 5 Jahren 1
1
WoodyElf

Der Registrierungsschlüssel:

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

kann nicht geändert werden, um zu erreichen, was im Kontextmenü "Neu" angezeigt wird oder nicht. Wenn Sie diesen Wert ändern, wird er vom Explorer überschrieben, wenn Sie das nächste Mal mit der rechten Maustaste klicken und das Kontextmenü "Neu" aufrufen. Probieren Sie es aus und Sie werden sehen, was ich meine.