预装 win10 可以改 win7 吗
(预装 win10 的电脑可以改 win7 吗)
前言
因为某次想要修改注册表,结果把整个系统都搞坏了,只好再次咬牙重装。庸人一个,发狠之下,便有了此文。
先说一些相关的文案知识,接着附上我的一些改动和应用,类似右键获取文件名、修改软件默认盘、修改右键新建菜单等。
注意所有的 reg 文件都是 ansi 编码的!!!
文案知识
HKEY_CLASSES_ROOT\*\shell 和 HKEY_CLASSES_ROOT\*\shellx 放置了右键菜单的地方,看看有哪些是自己安装的软件带来的,看名字挑着没用的就能删除了。
这里提醒一句,看见键名称是一串序列号的,请仔细核对后,确认不是系统项再删除。用这种长传数字当名字的键,如果里面空空如也,那很有可能是系统项。
文件夹分为两类菜单一类是鼠标指向一个文件夹图标时,点击右键出来的菜单;在 Directory 下,shell 和 shellex\ContextMenuHandlers 里面第二类菜单时鼠标在已经打开的文件夹窗口的空白处,点击右键弹出的菜单。在子项 Background 里面。打开组策略和注册表
#唤出运行窗口 win+R#组策略 regedit# 注册表 gpedit.msc 注册表根键说明 hkey_classes_root 包含注册的所有 OLE 信息和文档类型,是从 hkey_local_machine\software\classes 复制的。hkey_current_user 包含登录的用户配置信息,是从 hkey_users\ 当前用户子树复制的。hkey_local_machine 包含本机的配置信息。其中 config 子树是显示器打印机信息;enum 子树是即插即用设备信息;system 子树是设备驱动程序和服务参数的控制集合;software 子树是应用程序专用设置。hkey_users 所有登录用户信息。hkey_current_config 包含常被用户改变的部分硬件软件配置,如字体设置、显示器类型、打印机设置等。是从 hkey_local_machine\config 复制的。hkey_dyn_data 包含现在计算机内存中保存的系统信息。应用加快菜单显示速度
修改 HKEY_CURRENT_USER\Control Panel\Desktop,将字符串值 MenuShowDelay 的数值数据更改为 [0],调整后如觉得菜单显示速度太快而不适应者可将[MenuShowDelay] 的数值数据更改为[200],重新启动即可
参考风之悦的博客有注册表的应用,需要的小伙伴可以自行查看
再参考这篇 CSDN 的 Windows 自定义右键菜单步骤更详细一些
Windows Registry Editor Version 5.00[HKEY_CURRENT_USER\Control Panel\Desktop]"MenuShowDelay"="0" |
右键获取文件名
主要是做博客的时候有这个需要,一直都是“重命名–>Ctrl+A–>Ctrl+C–> 切换后 Ctrl+V”几次还行,多次之后就烦了。
于是想要在右键菜单里加入一个复制当前文件(夹)的选项。
经过搜集和整理后发现了两个方法,大家按需选择。
方法一需要两个小工具,但是可以获得后缀名;方法二之需要一个小工具,但是不能获得后缀名。
方法一
需要下载小工具 nircmd 和 hideexec,请移步公众号 ** 君匡 **(因为域名和服务器都会频繁改动,关注后取关也无妨的,/ 腼腆笑)
第一步,手动建立文件 copyname.bat,并把他放在路径 C:\Users\Administrator\bat。
nircmd clipboard set "%~nx1"
第二步,安装 nircmd,解压后双击文件 D:\Program Files\nircmd\x64\nircmd.exe 跳出一个对话框,选择 Copy To Windows,完成提示后,核对是否有 C:\Windows\nircmd.exe。

第三步,安装 hideexec,把文件解压到 D:\Program Files\ 即可。
第四步,修改注册表
获取文件的路径需要去 HKEY_CLASSES_ROOT\*\shell\,获取文件夹的路径是需要去 HKEY_CLASSES_ROOT\Directory\shell 进行,如果觉得手动修改比较复杂,你可以直接跳到 Reg 文件那里。
手动修改注册表在 shell 文件夹上面右键,新建 -> 项 ->copyname,修改 copyname 的默认值为复制文件名
在 copyname 文件夹上面右键,新建 -> 项 ->command
修改 command 的默认值为
"D:\Program Files\hideexec\bin.x86-64\hideexec.exe" "C:/Users/Administrator/bat/copyname.bat" "%1" |
按 SHIFT 键时才显示(可选)
在 shell 文件夹上面右键,新建 -> 字符串值 ->Extended(值为空即可),效果如图:


配个图,明眼人都知道怎么一回事儿。
reg 文件自动修改注册表
附上 Reg 文件,如果你觉得手动修改有些麻烦,而且前三步你是完全照着我的要求做的,那么可以直接运行我的 reg 脚本,在任何地方新建,用记事本打开,填入内容后保存,再用记事本修改文件编码为 Ansi 编码!!!
新建一个 txt 文本文件,文件名称随意,修改文件扩展名为.reg 即可,内容如下。
Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\Directory\shell\copyname]"icon"="C:\\Windows\\system32\\SHELL32.dll,68"@="复制文件夹名"[HKEY_CLASSES_ROOT\Directory\shell\copyname\command]@="\"D:\\Program Files\\hideexec\\bin.x86-64\\hideexec.exe\"\"C:/Users/Administrator/bat/copyname.bat\"\"%1\""[HKEY_CLASSES_ROOT\*\shell\copyname]"icon"="C:\\Windows\\system32\\SHELL32.dll,68"@=" 复制文件名 "[HKEY_CLASSES_ROOT\*\shell\copyname\command]@="\"D:\\Program Files\\hideexec\\bin.x86-64\\hideexec.exe\" \"C:/Users/Administrator/bat/copyname.bat\" \"%1\"" |
保存后退出,双击打开 reg 文件,选择确定即可。
方法二
注意:复制的文件名没有后缀!
第一步,建立脚本 Bat 文件
手动建立文件 copyfilename.bat,并放到路径 C:\Windows 里。手动建立文件 copydirectoryname.bat,并放到路径 C:\Windows 里。
第二步,建立脚本 Reg 文件
新建一个 txt 文本文件,文件名称随意,修改文件扩展名为.reg 即可,内容如下。
Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\*\shell\copyname]"icon"="C:\\Windows\\system32\\SHELL32.dll,68"@="复制文件名"[HKEY_CLASSES_ROOT\*\shell\copyname\command]@="\"D:\\Program Files\\hideexec\\bin.x86-64\\hideexec.exe\"\"C:/Windows/copyfilename.bat\"\"%1\""[HKEY_CLASSES_ROOT\Directory\shell\copyname]"icon"="C:\\Windows\\system32\\SHELL32.dll,68"@=" 复制文件夹名 "[HKEY_CLASSES_ROOT\Directory\shell\copyname\command]@="\"D:\\Program Files\\hideexec\\bin.x86-64\\hideexec.exe\" \"C:/Windows/copydirectoryname.bat\" \"%1\"" |
运行前,用记事本修改文件编码为 Ansi 编码!!!
右键复制文件路径
Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\Allfilesystemobjects\shell\windows.copyaspath]"CanonicalName"="{707C7BC6-685A-4A4D-A275-3966A5A3EFAA}""CommandStateHandler"="{3B1599F9-E00A-4BBF-AD3E-B3F99FA87779}""CommandStateSync"="""Description"="@shell32.dll,-30336""Icon"="imageres.dll,-5302""InvokeCommandOnSelection"=dword:00000001"MUIVerb"="@shell32.dll,-30329""VerbHandler"="{f3d06e7c-1e45-4a26-847e-f9fcdee59be0}""VerbName"="copyaspath" |
Shift 右键添加获取管理员权限
默认你已经看过了上面的内容,所以直接附上 Reg 文件内容了。
Windows Registry Editor Version 5.00; 取得文件修改权限 [HKEY_CLASSES_ROOT\*\shell\runas] @="管理员权限""Extended"=" ""Icon"="C:\\Windows\\System32\\imageres.dll,102""NoWorkingDirectory"=""[HKEY_CLASSES_ROOT\*\shell\runas\command] @="cmd.exe /c ta |
修改软件默认盘
平常安装的时候,都会是默认安装到 C 盘,于是我突发奇想,想使得安装的时候默认在 D 盘。可以用修改注册表的手段来实现。
计算机 \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion |
修改 ProgramFilesDir 和 ProgramFilesDir (x86)即可。
然后我就发现好多基础的功能不能够使用了!!!
比如说开始菜单里的 IE 就会自动的牵引到 D 盘路径里面,但是它实际是在安装系统的时候放到了 C 盘,我又不想要挨个整理开始菜单,于是我就又改回来了。
如果你是刚刚建立了新系统,可以这样子修改,如果已经用了一段时间,并不太建议。
附上 reg 文件如下。
Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion]"ProgramFilesDir"="D:\\Program Files""ProgramFilesDir (x86)"="D:\\Program Files (x86)" |
添加 gitbash 到桌面右键和文件夹右键
前提是我已经安装了 git-bash 并且所在位置为 "D:\Program Files\Git\bin\bash.exe",如果不一致,请自行替换。
在文件夹内右键的路径需要去计算机 \HKEY_CLASSES_ROOT\Directory\Background\shell,在桌面右键的路径是需要去计算机 \HKEY_CLASSES_ROOT\DesktopBackground\Shell 进行,如果觉得手动修改比较复杂,你可以直接跳到 Reg 文件那里。
进入注册表路径,在 shell 文件夹上面右键,新建 -> 项 ->git-bash
指定图标:建立名为 Icon 的字符串, 值为 C:\Windows\system32\mmres.dll,4 放到顶部:建立名为 position 的字符串, 值为 top 指定路径:在 git-bash 文件夹上面右键,新建 -> 项 ->command,修改默认值为 "D:\Program Files\Git\bin\bash.exe"
附上 reg 文件如下。
Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\Directory\Background\shell\git-bash]"Icon"="C:\\Windows\\system32\\mmres.dll,4""position"="top""MUIVerb"="GitBash(&G)"[HKEY_CLASSES_ROOT\Directory\Background\shell\git-bash\command]@="\"D:\\Program Files\\Git\\bin\\bash.exe\"" |
自定义右键新建菜单
注册表路径为
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Discardable\PostSetup\ShellNew |
但是一般来说,直接编辑保存会提示没有权限。
修改权限
在 shell 文件夹上面右键 -> 权限 -> 高级 -> 禁用继承 -> 将已继承的权限转换为此对象的显示权限
将两个管理员权限都改成读取, 给当前用户取消完全控制权限, 点击显示高级权限, 新增修改和删除权限!!
修改 classes 项
原先是:
.bmp.doc.docx.library-ms.lnk.ppt.pptx.rar.rtf.txt.xls.xlsx.zipFolder |
可以删除原有的内容和排序,改成你想要的,比如我就是改成了这个样子。
Folder.txt.md.docx.xlsx.pptx |
但是修改保存后,返现还没有.md 的选项. 原来是我还缺一步操作.
自定义选项
拿.txt 做参考
Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\.txt]"Content Type"="text/plain""PerceivedType"="text"@="txtfile"[HKEY_CLASSES_ROOT\.txt\PersistentHandler]@="{5e941d80-bf96-11cd-b579-08002b30bfeb}"[HKEY_CLASSES_ROOT\.txt\ShellNew]"ItemName"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,\ 6f,00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,\ 00,6e,00,6f,00,74,00,65,00,70,00,61,00,64,00,2e,00,65,00,78,00,65,00,2c,00,\ 2d,00,34,00,37,00,30,00,00,00"NullFile"="" |
分析后发现他里面有一项是 @="txtfile", 于是再去统计目录下发现项 txtfile
Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\txtfile]@="Text Document""EditFlags"=dword:00210000"FriendlyTypeName"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,\ 00,6f,00,6f,00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,\ 32,00,5c,00,6e,00,6f,00,74,00,65,00,70,00,61,00,64,00,2e,00,65,00,78,00,65,\ 00,2c,00,2d,00,34,00,36,00,39,00,00,00[HKEY_CLASSES_ROOT\txtfile\DefaultIcon]@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\ 00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,69,00,6d,00,\ 61,00,67,00,65,00,72,00,65,00,73,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,31,\ 00,30,00,32,00,00,00[HKEY_CLASSES_ROOT\txtfile\shell][HKEY_CLASSES_ROOT\txtfile\shell\open][HKEY_CLASSES_ROOT\txtfile\shell\open\command]@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\ 00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,4f,00,\ 54,00,45,00,50,00,41,00,44,00,2e,00,45,00,58,00,45,00,20,00,25,00,31,00,00,\ 00[HKEY_CLASSES_ROOT\txtfile\shell\print][HKEY_CLASSES_ROOT\txtfile\shell\print\command]@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\ 00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,4f,00,\ 54,00,45,00,50,00,41,00,44,00,2e,00,45,00,58,00,45,00,20,00,2f,00,70,00,20,\ 00,25,00,31,00,00,00[HKEY_CLASSES_ROOT\txtfile\shell\printto][HKEY_CLASSES_ROOT\txtfile\shell\printto\command]@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\ 00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,6e,00,6f,00,\ 74,00,65,00,70,00,61,00,64,00,2e,00,65,00,78,00,65,00,20,00,2f,00,70,00,74,\ 00,20,00,22,00,25,00,31,00,22,00,20,00,22,00,25,00,32,00,22,00,20,00,22,00,\ 25,00,33,00,22,00,20,00,22,00,25,00,34,00,22,00,00,00 |
观察后总结,若是我要新增一个自定义的新建类型,必须要添加默认应用(typora)和默认类型(.md)两个项进去才可以。
于是就有了下面的精简版 Reg 文件。
Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\.md]@="typora"[HKEY_CLASSES_ROOT\.md\ShellNew]"NullFile"=""[HKEY_CLASSES_ROOT\typora]@="Markdown""Icon"="\"D:\\Program Files\\Typora- 便携 -0.9.92\\Typora\\Typora.exe\"""position"="top"[HKEY_CLASSES_ROOT\typora\command]@="\"D:\\Program Files\\Typora- 便携 -0.9.92\\Typora\\Typora.exe\"" |
效果如下:
去除多余导航
注册表路径如下。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\ |
对应的文件夹选项如下。
下载:088e3905-0323-4b02-9826-5d99428e115f 图片:24ad3ad4-a569-4530-98e1-ab02f9417aa8 音乐:3dfdf296-dbec-4fb4-81d1-6a3438bcf4de 文档:d3162b92-9365-467a-956b-92703aca08af 视频:f86fa3ab-70d2-4fc7-9c99-fcbf05467f3a3D 对象:0DB7E03F-FC29-4DC6-9020-FF41B59E513A |
直接附上 Reg 文件便是,Win10 真的不会改呀。
Windows Registry Editor Version 5.00 [-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{088e3905-0323-4b02-9826-5d99428e115f}][-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{24ad3ad4-a569-4530-98e1-ab02f9417aa8}][-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{3dfdf296-dbec-4fb4-81d1-6a3438bcf4de}][-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{d3162b92-9365-467a-956b-92703aca08af}][-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{f86fa3ab-70d2-4fc7-9c99-fcbf05467f3a}][-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}][-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{B4BFCC3A-DB2C-424C-B029-7FE99A87C641}] |
使用 Bat 脚本修改注册表
主要核心命令为:
reg queryreg delreg add
使用这个方式,可以直接将 java 等环境变量一次性全安装到系统环境变量上!
echo off:: 设置变量 set oldPath=set JAVA_HOME="D:\all_sdk\Java\jdk1.8.0_201"set MVN_HOME="D:\all_sdk\apache-maven-3.6.0"set Android_SDK="D:\all_sdk\Android_SDK\platform-tools"set NODE_HOME="D:\all_sdk\node-v12.15.0"set PYTHON_HOME="D:\all_sdk\python":: 查询语句获得原有变量 for /f "tokens=3" %%a in ('"reg query"HKEY_CURRENT_USER\Environment"/v Path"') do (set oldPath=%%a)echo oldPath:%oldPath%:: 赋值到注册表中 reg add "HKCU\Environment" /f /t REG_SZ /v JAVA_HOME /d %JAVA_HOME%reg add "HKCU\Environment" /f /t REG_SZ /v MVN_HOME /d %MVN_HOME%reg add "HKCU\Environment" /f /t REG_SZ /v Android_SDK /d %Android_SDK%reg add "HKCU\Environment" /f /t REG_SZ /v NODE_HOME /d %NODE_HOME%reg add "HKCU\Environment" /f /t REG_SZ /v PYTHON_HOME /d %PYTHON_HOME%reg add "HKCU\Environment" /f /t REG_EXPAND_SZ /v Path /d "%oldPath%;%%JAVA_HOME%%\bin;%%JAVA_HOME%%\jre\bin;%%MVN_HOME%%\bin;%%Android_SDK%%;%%NODE_HOME%%;%%NODE_HOME%%\node_global;%%PYTHON_HOME%%"pause |
感谢
感谢现在的好奇,为了能成为更好的自己。
Win10 系统怎么创建自定义右键菜单
[windows 注册表] http://blog.sina.com.cn/s/blog_9ed014090102uwqy.html 博主大才啊
[Win10 右键添加获取管理员权限] http://blog.sina.com.cn/s/blog_9ed014090102w4b2.html
[Windows 自定义右键菜单] https://blog.csdn.net/qq_25166683/article/details/81352868
[Win10 如何自定义右键菜单 - 修改注册表] https://blog.csdn.net/CrowNAir/article/details/78128566
[win7 右键 注册 dll,右键 复制文件 (夹) 名称 路径] https://blog.csdn.net/nxeexn/article/details/7058456
[windows 右键新建菜单内,添加 md,删除不用选项] https://blog.csdn.net/SYNOPSIS123/article/details/112854928
[bat 脚本(批处理)操作注册表] https://blog.csdn.net/GoodFaith008/article/details/124702979