win10下右键菜单添加“打开cmd”

https://blog.csdn.net/Mr_BEelzebub/article/details/78776104
新建一个文本文档。

Windows Registry Editor Version 5.00
 
 
 
[HKEY_LOCAL_MACHINESOFTWAREClassesDirectoryackgroundshellcmd_here]
 
@="在此处打开命令行"
"Icon"="cmd.exe"
 
 
[HKEY_LOCAL_MACHINESOFTWAREClassesDirectoryackgroundshellcmd_herecommand]
 
@=""C:\Windows\System32\cmd.exe""
 
 
 
[HKEY_LOCAL_MACHINESOFTWAREClassesFoldershellcmdPrompt]
 
@="在此处打开命令行"
 
 
 
[HKEY_LOCAL_MACHINESOFTWAREClassesFoldershellcmdPromptcommand]
 
@=""C:\Windows\System32\cmd.exe" "cd %1""
 
 
 
[HKEY_LOCAL_MACHINESOFTWAREClassesDirectoryshellcmd_here]
 
@="在此处打开命令行"
"Icon"="cmd.exe"
 
 
 
[HKEY_LOCAL_MACHINESOFTWAREClassesDirectoryshellcmd_herecommand]
 
@=""C:\Windows\System32\cmd.exe""

然后、将上面内容粘贴到该文本文档中,保存。并将该文本文档以.reg结尾即可,名字可以随意取。

原理

REG文件实际上是一种windows操作系统的注册表脚本文件,可将其中的数据导入到注册表中。注册表是Windows中的一个重要的数据库,用于存储系统和应用程序的设置信息。

关于注册表

最初,Windows系统及应用程序的信息被存储在后缀名为ini的文本文件中,这就是注册表的前身。但是这么做有着致命弱点:因为每一个程序都会新安装一个或多个ini文件,来存储程序信息,导致信息的分布极为零乱。微软为了存放系统中大量的软件组件信息,组织了一个reg.dat的数据库来存放这些信息。关于分散的文本文件集中的注册表两种软件配置方式的优劣,目前仍有争论。

注册表有五个一级分支,下面是这五个分支的名称及作用:

名称 作用
HKEY_CLASSES_ROOT 存储Windows可识别的文件类型的详细列表,以及相关联的程序。
HKEY_CURRENT_USER 存储当前用户设置的信息。
HKEY_LOCAL_MACHINE 包括安装在计算机上的硬件和软件的信息。
HKEY_USERS 包含使用计算机的用户的信息。
HKEY_CURRENT_CONFIG 这个分支包含计算机当前的硬件配置信息。

注册表由key、subkey、value构成。一个键就是树状数据结构中的一个节点,而子键就是这个节点的子节点。
一个值项则是一个键的一条属性,由名称(name)、数据类型(datatype)以及数据(data)组成。一个键可以有一个或多个值,每个值的名称各不相同,如果一个值的名称为空,则该值为该键的默认值。

其中,command键是open键的子键,(默认)表示该值是默认值,值名称为空,其数据类型为REG_SZ,数据值为%systemroot%system32NOTEPAD.EXE "%1" 以上信息的意义是:txt类型的文件在右键菜单里的“打开”一项使用的程序是“NOTEPAD.EXE”,即用记事本打开文件。

Windows平台下开发的软件几乎都在不同程度上修改注册表,以便保存一些在程序多次运行之间需要保留的信息,以及让软件可以通过某种特定方式(例如,右键菜单)启动。

程序修改

python 可以通过win32api对注册表进行修改

原文地址:https://www.cnblogs.com/uestcman/p/9996892.html