存储数据结构
树型结构,分支结点和叶子节点均可存储数据
每个节点存储的数据为 键->List; 名称大小写不敏感
数据类型
REG_BINARY 二进制类型,以十六制显示
DWORD/QWORD 数值类型DWORD 为 32 位,QWORD 为 64 位
REG_SZ 字符串类型 ,最大长度不能超过 255 个字符
REG_EXPAND_SZ 扩展字符串类型 ,可解释 %变量%
REG_MULTI_SZ
注册表存储的是 Hive 文件,存储路径为 \Windows\System32\config
五大根键
HKEY_USERS
Default 子键内容和 HKEY_CURRENT_USER 一致,其它不用管
HKEY_CURRENT_USER
保存了当前登录用户数据,个性化配置,键的内容随登录用户不同而不同
ControlPanel
控制面板设置,桌面背景,容器外观等
Software
当前环境中安装的软件设置,windows 本身内置功能
HKEY_LOCAL_MACHINE
保存的系统信息,包括硬件配置,外围设备,网络设置,所安装的软件
HARDWARE
计算机硬件相关的各项信息,驱动程序的设置
SAM SECURITY
用户组,用户,系统安全设置,权限分配
SOFTWARE
已安装的软件信息,与 HKEY_CURRENT_USER/Software 不同的是,这个对所有用户都生效
SYSTEM
系统启动,驱动程序加载等与操作系统本身相关的各项设置信息
HKEY_CLASSES_ROOT
文件类型,文件关联,图标,扩展名,哪种文件类型用哪个软件打开
HKEY_CURRENT_CONFIG
当前硬件的配置值
编写注册表脚本(第一种方法)
Windows Registry Editor Version 5.00
这个空行一定要的
[HKEY_CURRENT_USER\Software]
"键值名称"=键值
添加 / 删除子键
添加子键
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\键位置]
删除子键
Windows Registry Editor Version 5.00
[-HKEY_CURRENT_USER\Software\键位置]
设置键值
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\键位置]
@="lcazhj"设置默认值
"姓名"="LC"设置字符串值 REG_SZ
"地址"=hex(2):hexvalue设置字符串 REG_EXPAND_SZ
"地超"=hex(7):hexvalue设置字符串 REG_MULTI_SZ
"年龄"=hex:22设置二进制值
"婚否"=DWORD:00000000设置 DWORD 值
下面是删除键值
"姓名"=-
编写注册表脚本(使用 reg 命令)
reg add "HKLM\SOFTWARE\MYCO" /v data /t REG_DWORD /d 1 /f
/v 名称
/t 数据类型 REG_SZ|REG_MULTI_SZ|REG_EXPAND_SZ|REG_DWORD|REG_QWORD|REG_BINARY|REG_NONE
/d 数据
/f 强制执行
常用注册表解决问题示例
修改我的音乐,我的图片,我的视频,我的文档,收藏夹,桌面,下载 的默认位置
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
资源管理器中显示菜单栏
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"AlwaysShowClassicMenu"=dword:00000001
显示隐藏的文件(隐藏文件,系统隐藏文件,扩展名)
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced]
"Hidden"=dword:00000001
"ShowSuperHidden"=dword:00000001
"HideFileExt"=dword:00000000
关闭防火墙
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\SharedAccess\Parameters\FirewallPolicy\StandardProfile]
"EnableFirewall"=dword:00000000
关闭系统更新
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
"NoWindowsUpdate"=dword:00000001
立即刷新注册表,不用重启来生效
重启 explorer.exe 即可生效
执行命令 RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters
一点小推广
创作不易,希望可以支持下我的开源软件,及我的小工具,欢迎来 gitee 点星,fork ,提 bug 。