因为某次想要修改注册表,结果把整个系统都搞坏了,只好再次咬牙重装庸人一个,发狠之下,便有了此文,今天小编就来聊一聊关于win10电脑重装系统步骤?接下来我们就一起去研究一下吧!

win10电脑重装系统步骤(第N次重装系统之win10注册表)

win10电脑重装系统步骤

前言

因为某次想要修改注册表,结果把整个系统都搞坏了,只好再次咬牙重装。庸人一个,发狠之下,便有了此文。

先说一些相关的文案知识,接着附上我的一些改动和应用,类似右键获取文件名、修改软件默认盘、修改右键新建菜单等。

注意所有的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 takeown /f \"%1\" && icacls \"%1\" /grant administrators:F" "IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F" [HKEY_CLASSES_ROOT\exefile\shell\runas2] @="管理员权限" "Extended"=" " "Icon"="C:\\Windows\\System32\\imageres.dll,102" "NoWorkingDirectory"="" [HKEY_CLASSES_ROOT\exefile\shell\runas2\command] @="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F" "IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F" [HKEY_CLASSES_ROOT\Directory\shell\runas] @="管理员权限" "Extended"=" " "Icon"="C:\\Windows\\System32\\imageres.dll,102" "NoWorkingDirectory"="" [HKEY_CLASSES_ROOT\Directory\shell\runas\command] @="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F /t" "IsolatedCommand"="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F /t"

修改软件默认盘

平常安装的时候,都会是默认安装到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 .zip Folder

可以删除原有的内容和排序,改成你想要的,比如我就是改成了这个样子。

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-fcbf05467f3a 3D对象:0DB7E03F-FC29-4DC6-9020-FF41B59E513A 桌面:B4BFCC3A-DB2C-424C-B029-7FE99A87C641

直接附上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 query

reg del

reg 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自定义右键菜单] http://blog.csdn.net/qq_25166683/article/details/81352868

[Win10如何自定义右键菜单-修改注册表] http://blog.csdn.net/CrowNAir/article/details/78128566

[win7 右键 注册dll,右键 复制文件(夹)名称 路径] http://blog.csdn.net/nxeexn/article/details/7058456

[windows右键新建菜单内,添加md,删除不用选项] http://blog.csdn.net/SYNOPSIS123/article/details/112854928

[bat 脚本(批处理)操作注册表] http://blog.csdn.net/GoodFaith008/article/details/124702979