当我右键单击任何地方时,我都可以选择添加具有指定扩展名的新文件。我想在此菜单中添加一些自定义文件,因此我可以右键单击并创建一个新的PHP文件。

我该怎么做?

评论

尝试使用rbsoft.org/downloads/right-click-enhancer
的右键单击增强器中包含的新菜单编辑器工具

如果您在Windows 7中添加一个全新的文件扩展名(而不是简单地将NullFile / FileName添加到现有条目)有问题,请参阅此其他问题...superuser.com/questions/588647/…

Ramesh的网站是手动添加条目的好资源。

我尝试了以下方法,但没有成功。我可能缺少另一个晦涩的注册表设置。无论如何,真的不值得浪费时间。

我在Windows 10上尝试过此方法,并且可以正常工作。我将png文件添加到新列表中。

#1 楼

要将您选择的扩展名添加到列表中:创建一个文件,添加以下内容,将其保存为what.reg,然后运行它。

注意:将.png替换为您想要的文件扩展名添加并替换为所需的任何内容。

Windows Registry Editor Version 5.00

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




评论


请考虑链接腐烂。

– Mehper C. Palavuzlar
2011-1-26在20:47

好决定。答案已编辑:)

–th3dude
11年1月27日在21:45

+1,这有效。我们如何拥有一个自定义文件名,例如“ index.php”,而不是“ New PHP file.php”?

–fedmich
2012年9月28日下午3:14

我必须运行.reg文件两次才能使其正常运行。感谢您的回答。

– Aakash
16 Mar 15 '13:00



在Windows 10,1709中对我不起作用:(重新启动资源管理器并重新启动计算机,甚至...

–娱乐
18年1月12日在11:29

#2 楼

还有一件事:

如果要添加文件作为新项目的模板,请使用

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


,然后放置文件(html.html)在:


对于您自己的个人资料:%Userprofile%\Templates

对于所有用户:%Allusersprofile%\Templates

对于整个系统:%Systemroot%\ShellNew



更多详细信息:如果要删除“ Windows Live Call”条目,请使用:

[-HKEY_CLASSES_ROOT\.wlcshrtctv2\LiveCall\ShellNew]


评论


很酷的想法,能够使用文件作为模板!

–克莱尔·尼科尔斯(Clay Nichols)
11年1月28日在20:02

万一有人怀疑,FileName条目似乎会覆盖其他答案中提到的NullFile条目。您似乎不需要删除现有的NullFile值。但是,同时拥有这两个条目似乎会使其他第三者实用程序产生混淆,例如NirSoft的ShellMenuNew。 (Windows 7的)

–怀特先生
13年11月1日在10:55



如果您将整个路径名指定给文件,则我认为它不必位于%Userprofile%Templates等文件中。

– Jiggunjer
2015年6月20日在2:39

如果要为同一程序创建两个不同模板的两个快捷方式,该怎么办?例如,我完美地使用了此方法来为TeXworks的“文章”模板创建上下文菜单项。我现在还想为TeXworks添加一个“ modified_article”模板。是否可以将两者都添加到上下文菜单?谢谢!

– Prahar
16年5月22日在18:19

在Windows 8.1中,您列出的模板文件夹不起作用。我收到“访问被拒绝”错误。模板现在应该放在哪里,这显然是一个快捷文件夹,称为“连接”,它是一个隐藏的“特定于操作系统”的文件。因此,模板文件夹现在已移动。请参阅此链接以获取新的映射(jimmah.com/vista/Security/junctions.aspx)。显然,例如,您现在的个人资料现在是C:\ Users \ USER_NAME \ AppData \ Roaming \ Microsoft \ Windows \ Templates。

–加百利·斯台普斯
16-10-30在20:29



#3 楼

ShellNewHandler帮助我恢复了Windows 7 Shell菜单>“新建”>“ txt文档条目”。




取消选中.txt

单击应用
检查.txt

单击应用


评论


这是否允许您添加新条目?从屏幕截图和说明中看不出来。

–怀特先生
13年11月1日在10:16

这不允许您添加条目...因此它与主题完全无关。

–埃里克·塞巴斯塔(Eric Sebasta)
17年6月6日在14:05

#4 楼

进入注册表编辑器并展开HKEY_CLASSES_ROOT

转到.file_extention

并创建一个名为ShellNew

的密钥,在其中创建一个新的字符串密钥例如,如果我想为空白.wil对象*创建新条目,我将创建

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


*如果文件扩展名(例如.wil)不存在,我将首先创建具有该扩展名的文件,然后双击它。使用我选择的程序将其打开,因为这将创建其他所需的注册表项,并使您的工作更轻松。

评论


在Windows 10上不起作用,我也找到了这篇文章,但这也不起作用:askvg.com/how-to-add-remove-items-from-new-menu-in-windows

– Neo
16年4月29日在22:28

#5 楼

看来这里的其他解决方案已经过时了。在Windows 10 v.1709 Build 16299.192中,至少这些都不对我有用(编辑:在1809版中仍然有效)。我在VM中进行了一些测试,这是从2018.01.12开始在Windows 10 1709中起作用的方法:

添加注册表文件:

创建一个新的注册表文件并添加以下内容:

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"


用您要添加的扩展名替换xyz。并用文件扩展名替换XYZ test file(例如,.scss文件将是“语法上很棒的样式表文件”。)如果要使用模板文件,请参见以下说明。

它可能添加注册表文件后必须重新启动Windows资源管理器。可以通过在CMD中键入以下命令来重新启动explorer.exe:

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



<



代码的解释:

[HKEY_CLASSES_ROOT\.xyz]
@="xyz"


将在注册表中创建新的文件类型。
/>
[HKEY_CLASSES_ROOT\.xyz\ShellNew]
"FileName"=""


这将使您可以将模板用于此文件格式的所有新文件,例如,可以编写"template.xyz"并创建一个名为“ template.xyz”的新文件,然后将其用作模板,因此每次创建新文件时,都会填充预制的内容,正如Eduardo Molteni所述,模板文件的路径为:%Userprofile%\Templates%Allusersprofile%\Templates或整个系统%Systemroot%\ShellNew。的指定了任何模板名称,因为我们不想使用任何模板名称。

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


这将是上下文菜单和新创建文件的文件类型名称。据我所知,将此值保留为空白是不起作用的。

图标:

Windows将软件与文件类型相关联后,即会添加该图标。

评论


好答案,谢谢。请注意,在Windows 10中,%userprofile%\ Templates已移至%appdata%\ Microsoft \ Windows \ Templates,%Allusersprofile%\ Templates已移至%programdata%\ Microsoft \ Windows \ Templates

–TheImirOfGroofunkistan
18年5月30日在16:18



1903年工作(内部版本18362.900)。

–爱德华多·科帕特(Eduardo Copat)
20年6月22日在1:35

谢谢!没有其他答案对我有用。 Windows 10,内部版本19041.508

–理查德
20-09-11的3:11

#6 楼

要从列表中删除条目,这里是一个程序,允许您从GUI启用/禁用条目。比搜索注册表容易得多!

很遗憾,它不允许您添加条目。

评论


这正是我所需要的,谢谢!通常,您真正需要的只是“新文本文档” ...

–安德鲁(Andrew)
2011年6月14日15:51

#7 楼

在Windows 10中,这些方法都不适合我。

我终于找到了此页面,该页面解释了您需要引用包含名称和默认图标的另一个键。

这是创建条目所需的最低要求,但没有图标。

注意:第三条条目用于.txt

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.txt]
@="textfile"

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

[HKEY_CLASSES_ROOT\textfile]
@="Text Document"



这里有两种指定图标的方法


告诉资源管理器使用默认图标表示内容类型:


[HKEY_CLASSES_ROOT\.txt] 
@="textfile" 
"Content Type"="text/plain"
"PerceivedType"="text"



或2.在文本文件下指定一个图标,如下所示:

<哦,至少对我来说,仅关闭并重新打开资源管理器(确保关闭所有实例)就足以重新加载上下文菜单。您无需重新启动整个计算机。

评论


在我这边,“ Notepad ++”将HKEY_CLASSES_ROOT \ .txt更改为@ =“ Notepad ++ _ file”。因此,将HKEY_CLASSES_ROOT \ Notepad ++ _ file与@ =“ Textfile”一起添加即可达到目的。谢谢,很好找到!

– Tino
17年7月28日在20:38



#8 楼

您没有说使用的是哪个版本的Windows,如果是XP,则可以从Microsoft(也包含在Wikipedia中)下载TweakUI PowerToy。单击模板,然后在您的心脏内容中添加/删除文件类型。外观如下:


#9 楼

创建一个纯文本文件并在其中添加以下行:


Windows Registry Editor Version 5.00

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



保存文件并将其扩展名重命名为.reg文件。例如。 “ myNewItem.reg”。
请确保您重命名了扩展名,不仅要重命名文件名,例如(myNewItem.reg.txt)。

双击该文件,它将更新您的注册表。

下一步非常重要,请直接重新启动计算机。因此,请勿尝试打开内容菜单以查看它是否已经起作用!首先重新启动计算机。

如果打开内容菜单以查看您的令人惊奇的新项目是否已经列出,注册表将被恢复...

也可以尝试此程序:http://sourceforge.net/projects/shellnewhandler/

评论


无论我是否立即重启,我都无法在Windows 8.1中正常运行。不知道为什么。

–加百利·斯台普斯
16-10-30在23:19

#10 楼

注册表项:

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


不能更改以完成“新建”上下文菜单上显示或不显示的内容。如果您更改该值,则下次您右键单击并弹出“新建”上下文菜单时,资源管理器将覆盖该值。试试看,您会明白我的意思。

#11 楼

这些信息均由Microsoft正式记录;通常适用于注册自己的新文件类型的开发人员。

扩展新子菜单

当用户在Windows资源管理器中打开“文件”菜单时,第一个命令是“新建”。选择此命令将显示一个子菜单。默认情况下,它包含两个命令:“文件夹”和“快捷方式”,允许用户创建子文件夹和快捷方式。该子菜单可以扩展为包括任何文件类型的文件创建命令。

要将文件创建命令添加到“新建”子菜单,您的应用程序文件必须具有与之关联的文件类型。在文件扩展名的键下包含ShellNew子键。选择“文件”菜单的“新建”命令后,命令行管理程序会将其添加到“新建”子菜单中。命令的显示字符串将是分配给程序的ProgID的描述性字符串。

将一个或多个数据值分配给ShellNew子项以指定文件创建方法。可用值如下。



Command:执行应用程序。这是一个REG_SZ值,指定要执行的应用程序的路径。例如,您可以将其设置为启动向导。

Data:创建包含指定数据的文件。数据是包含文件数据的REG_BINARY值。如果指定了NullFile或FileName,则将忽略数据。

FileName:创建一个文件,该文件是指定文件的副本。 FileName是REG_SZ值,设置为要复制的文件的标准路径。

NullFile:创建一个空文件。未为NullFile分配值。如果指定了NullFile,则将忽略Data和FileName值。

示例创建一个新的空mpy文件:

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


要创建一个基于特定模板文件的新文件:

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