当我右键单击.txt
文件并选择Edit
时,文件将在 Notepad++ 中打开。但是当我选择Open
(或双击文件)时,我期待同样的事情,但regedit.exe
正在加载 Windows 注册表编辑器 ( )。
相关的注册表项是:
[HKEY_CLASSES_ROOT\.txt]
@="txtfile"
[HKEY_CLASSES_ROOT\txtfile\shell\edit\command]
@="\"C:\\Apps\\Notepad++\\notepad++.exe\" \"%1\""
[HKEY_CLASSES_ROOT\txtfile\shell\open\command]
@=hex(2):22,00,43,00,3a,00,5c,00,41,00,70,00,70,00,73,00,5c,00,4e,00,6f,00,74,\
00,65,00,70,00,61,00,64,00,2b,00,2b,00,5c,00,6e,00,6f,00,74,00,65,00,70,00,\
61,00,64,00,2b,00,2b,00,2e,00,65,00,78,00,65,00,22,00,20,00,22,00,25,00,31,\
00,22,00,00,00
(即"C:\Apps\Notepad++\notepad++.exe" "%1"
在注册表中)
为什么要加载注册表编辑器?另一个线索是.txt
和.reg
文件在 Windows 资源管理器中具有相同的图标,即 Windows 注册表编辑器图标。最后,.reg
文件的上下文菜单不包含名为 的选项Merge
,请参见图片。
这是怎么回事,我该如何解决?
更新
感谢 Kivitoe 的回答,我设法让它在Default Programs > Associate a file type or protocol with a program
.
但是,这还不是全部,因为当我将.txt
文件更改为 use时Notepad++
,.reg
文件停止使用Registry Editor
并开始使用Notepad++
. 所以我返回并更改.reg
为使用Registry Editor
. 这已经解决了命令的.txt
和.reg
文件Open
,但是当我选择Edit
一个.reg
文件并选择Notepad++
时,现在.reg
文件已经开始使用了 Notepad++
!
Windows 混淆了这两种文件类型,并且混淆了Open
andEdit
命令。
您似乎已将注册表编辑器设置为 .txt 文件的默认应用程序。打开控制面板,然后导航到程序 > 默认程序 > 将文件类型或协议与程序关联。然后向下滚动并选择文本文件,然后单击“更改程序”。从这里你可以设置记事本或记事本++默认打开这些。