命令行中执行reg /?,reg query /?即可知道reg的操作方式,此处做个记录,方便记忆

reg执行哪些操作

C:\Users\Administrator>reg /?REG Operation [Parameter List]Operation  [ QUERY   | ADD    | DELETE  | COPY    |SAVE    | LOAD   | UNLOAD  | RESTORE |COMPARE | EXPORT | IMPORT  | FLAGS ]

主要用到查询所以看看怎么查询

C:\Users\Administrator>reg query /?REG QUERY KeyName [/v [ValueName] | /ve] [/s][/f Data [/k] [/d] [/c] [/e]] [/t Type] [/z] [/se Separator]KeyName  [\\Machine\]FullKeyMachine - 远程机器名称,省略当前机器的默认值。在远程机器上只有 HKLM 和 HKU 可用。FullKey - 以 ROOTKEY\SubKey 名称形式ROOTKEY - [ HKLM | HKCU | HKCR | HKU | HKCC ]SubKey  - 在选择的 ROOTKEY 下的注册表项的全名/v       具体的注册表项值的查询。如果省略,会查询该项的所有值。只有与 /f 开关一起指定的情况下,此开关的参数才是可选的。它指定只在值名称中搜索。/ve      查询默认值或空值名称(默认)。/s       循环查询所有子项和值(如 dir /s)。/se      为 REG_MULTI_SZ 在数据字符串中指定分隔符(长度只为 1 个字符)。默认分隔符为 "\0"。/f       指定搜索的数据或模式。如果字符串包含空格,请使用双引号。默认为 "*"。/k       指定只在项名称中搜索。/d       指定只在数据中搜索。/c       指定搜索时区分大小写。默认搜索为不区分大小写。/e       指定只返回完全匹配。默认是返回所有匹配。/t       指定注册表值数据类型。有效的值是:REG_SZ, REG_MULTI_SZ, REG_EXPAND_SZ,REG_DWORD, REG_QWORD, REG_BINARY, REG_NONE默认为所有类型。/z       详细: 显示值名称类型的数字等值。示例:REG QUERY HKLM\Software\Microsoft\ResKit /v Version显示注册表值版本的值REG QUERY \\ABC\HKLM\Software\Microsoft\ResKit\Nt\Setup /s显示远程机器 ABC 上的、在注册表项设置下的所有子项和值REG QUERY HKLM\Software\Microsoft\ResKit\Nt\Setup /se #用 "#" 作为分隔符,显示类型为 REG_MULTI_SZ 的所有值名称的所有子项和值。REG QUERY HKLM /f SYSTEM /t REG_SZ /c /e以区分大小写的形式显示项、值和数据和数据类型 REG_SZ的、在 HKLM 更目录下的、"SYSTEM" 出现的精确次数REG QUERY HKCU /f 0F /d /t REG_BINARY显示在 HKCU 根目录下、数据类型为 REG_BINARY 的数据的项、值和数据的 "0F" 出现的次数。REG QUERY HKLM\SOFTWARE /ve显示在 HKLM\SOFTWARE 下的项、值和数据(默认)

实操:

项:注册表左边的一个个长得像文件夹的图标的东西就是项,项可以有子项,也可以有值,子项也是项,显示在注册表的左边

值:注册表右边的数据,值也分名称,类型和数据,类型对应二进制、字符串、多字符串、扩展字符串、32位值、64位值。编辑多字符串的时候可以换行,获取信息的时候发现每一行都是以\0结束,也就是多个字符串,扩展字符串是设置的时候%变量%会被解析,如:

C:\Users\Administrator>REG add HKLM\SOFTWARE\MICROSOFT\WISP /v "新值 #4" /t reg_expand_sz /d "%userprofile%\appdata"
操作成功完成。C:\Users\Administrator>REG query HKLM\SOFTWARE\MICROSOFT\WISP /v "新值 #4"HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WISP新值 #4    REG_EXPAND_SZ    C:\Users\Administrator\appdata

%userprofile%在设置后再读取被识别成真实的值了,程序中变量可以同过api:ExpandEnvironmentStrings解析,如果在注册表中手动编辑的时候写入%变量%,读取的时候是不会被解析的

获取具体的值

C:\Users\Administrator>REG QUERY HKLM\SOFTWARE\MICROSOFT\WISP /v "新值 #3"HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WISP新值 #3    REG_MULTI_SZ    HELLO WORLD\0GOOD\0WHAT THE FUCK

展示某项的所有值,不包括子项

C:\Users\Administrator>REG QUERY HKLM\SOFTWARE\MICROSOFT\WISP /v *HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WISP新值 #1    REG_SZ新值 #2    REG_SZ    HELLO WORLD新值 #3    REG_MULTI_SZ    HELLO WORLD\0GOOD\0WHAT THE FUCK新值 #4    REG_EXPAND_SZ    %USERPROFILE%\APPDATA新值 #5    REG_BINARY    766E5DE756456DFBDFFFDADFEAFAE3E3243562578356搜索结束: 找到 5 匹配。

获取某项的一级子项和该项中的所有值

C:\Users\Administrator>REG QUERY HKLM\SOFTWARE\MICROSOFT\WISPHKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WISP新值 #1    REG_SZ新值 #2    REG_SZ    HELLO WORLD新值 #3    REG_MULTI_SZ    HELLO WORLD\0GOOD\0WHAT THE FUCK新值 #4    REG_EXPAND_SZ    %USERPROFILE%\APPDATA新值 #5    REG_BINARY    766E5DE756456DFBDFFFDADFEAFAE3E3243562578356HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WISP\ExcludedDevices
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WISP\MultiTouch
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WISP\Pen
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WISP\Touch
HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WISP\新项 #1

获取所有子项和所有值

C:\Users\Administrator>REG QUERY HKLM\SOFTWARE\MICROSOFT\WISP /sHKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WISP新值 #1    REG_SZ新值 #2    REG_SZ    HELLO WORLD新值 #3    REG_MULTI_SZ    HELLO WORLD\0GOOD\0WHAT THE FUCK新值 #4    REG_EXPAND_SZ    %USERPROFILE%\APPDATA新值 #5    REG_BINARY    766E5DE756456DFBDFFFDADFEAFAE3E3243562578356HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WISP\ExcludedDevicesHKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WISP\MultiTouchMultiTouchEnabled    REG_DWORD    0x1HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WISP\PenHKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WISP\Pen\SysEventParameters(默认)    REG_SZ    Microsoft Pen System Event ParametersUIRightTapMode    REG_DWORD    0x1Move    REG_DWORD    0x28ShakeAngle.min    REG_DWORD    0x5Move.min    REG_DWORD    0xaFlickMode    REG_DWORD    0x1LagTime    REG_DWORD    0x1eWaitTime.max    REG_DWORD    0x3e8
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

添加:

REG ADD HKLM\Software\MyCo /v Data /t REG_BINARY /d fe340ead添加一个值(名称: Data,类型: REG_BINARY,数据: fe340ead)

删除:

REG DELETE HKLM\Software\MyCo\MyApp\Timeout删除注册表项 Timeout 及其所有子项和值REG DELETE \\ZODIAC\HKLM\Software\MyCo /v MTU删除 ZODIAC 上 MyCo 下的注册表项 MTU

如果Key中有百分号,并且连个百分号中夹杂着一个变量,如%SystemRoot%_system32_cmd.exe,需要添加^符号进行转译

C:\Users\Administrator>reg query hkcu\console\^%SystemRoot^%_system32_cmd.exeHKEY_CURRENT_USER\console\%SystemRoot%_system32_cmd.exeCodePage    REG_DWORD    0x3a8ScreenBufferSize    REG_DWORD    0x3e80078WindowSize    REG_DWORD    0x730078FaceName    REG_SZ    TerminalFontSize    REG_DWORD    0x10000cFontFamily    REG_DWORD    0x30FontWeight    REG_DWORD    0x190

其他用户的注册表:

假如现在有用户Administrator和用户test,当前登录用户是Administrator,注册表中的HKEY_USERS里面没有test对应的sid的注册表,要获取用户的sid,可以通过NetUserGetInfo获取

LPUSER_INFO_4 pUserInfo4 = NULL;
NET_API_STATUS n4Status = NetUserGetInfo(NULL, usri1_name, 4, (LPBYTE*)&pUserInfo4)

也可以通过NetUserEnum遍历用户,获取用户名,NetUserEnum不能直接获取level4的用户信息,

用户的注册表在c:\users\test\ntuser.dat,可以通过

reg load hku\test c:\users\test\ntuser.data

把test的user注册表挂载到注册表,也可以自行获取sid然后根据windows的用户注册表挂载名称的规则挂载。其中常用路径在

C:\Users\test1>reg query "hku\test\software\microsoft\windows\currentversion\explorer\user shell folders"C:\Users\test1>reg query "hkcu\software\microsoft\windows\currentversion\explorer\user shell folders"

有一个相似的注册表路径

hkcu\software\microsoft\windows\currentversion\explorer\shell folders

通过检测,shell folders里面的appdata项改掉后echo %appdata%不会改变,修改user shell folders里面的appdata项才会改变

Reg命令查询注册表相关推荐

  1. Reg 命令修改注册表

    首先要说明:编辑注册表不当可能会严重损坏您的系统.在更改注册表之前,应备份计算机上任何有价值的数据 只有在别无选择的情况下,才直接编辑注册表.注册表编辑器会忽略标准的安全措施,从而使得这些设置会降低性 ...

  2. Windows中使用reg命令编辑注册表

    最近在做灾备项目中,需要对一台Window服务器上的注册表,修改键值,这里记录修改的方法. 1 reg命令 reg命令是Windows系统命令,位于c:\windows\system32\目录下面,是 ...

  3. 查询注册表的命令行工具reg

    很偶然发现一个查询注册表的标准Windows命令行工具reg.看例子(os:Win7X64) C:\Users\CHEN>reg query HKEY_CURRENT_USER\Software ...

  4. 注册表的作用、bat文件中REG ADD命令添加注册表项以及bat

    注册表的用途与设置 注册表是windows的核心,里面储存着大量的系统信息,说白了就是一个庞大的数据库.如果你不懂什么是数据库,那没关系,不影响你了解注册表,不过最好对数据库有所了解.注册表里面所有的 ...

  5. 命令编写注册表文件修改注册表项

    命令编写注册表文件修改注册表项 1.何谓REG文件 REG文件实际上是一种注册表脚本文件,双击REG文件即可将其中的数据导入到注册表中.利用REG文件我们可以直接对注册表进行任何修改操作,它对注册表的 ...

  6. reg怎样存取注册表信息

    //reg怎样存取注册表信息 uses Registry;//放在uses下面 var   Form1: TForm1;   My_key:Tregistry; implementation {$R ...

  7. c# msiexec.exe卸载软件,cmd命令REG DELETE 清除注册表实例

    cmd执行关键代码 卸载软件:msiexec.exe /x {xxxxx-xxxx-xxxx-xxxxx} /quiet /norestart 解释: {xxxxx-xxxx-xxxx-xxxxx}  ...

  8. python查询注册表子项是否存在并操作

    2019独角兽企业重金招聘Python工程师标准>>> # -*- coding: utf-8 -*- __author__ = 'Administrator' import win ...

  9. 查看电脑配置命令_注册表

    查看电脑配置命令 2008年06月16日 星期一 13:59 打开注册表 开始--运行--regedit 什么是注册表? 注册表因为它复杂的结构和没有任何联系的CLSID键使得它可能看上去很神秘.不幸 ...

  10. Dos命令删除注册表项

    reg delete hklm\software\microsoft\mslicensing /f 连接远程桌面 mstsc /v:192.168.41.9 转载于:https://www.cnblo ...

最新文章

  1. JavaScript_上
  2. Nginx小功能合集
  3. 《研磨设计模式》chap12 观察者模式observer(1)模式简介
  4. python 集合
  5. Collections.toArray方法使用的坑
  6. python计算每月工资多少钱_[Python]CCF——工资计算(201612-2)
  7. C++primer 第 2 章 变量和基本类型
  8. java 公因数_Java程序(最大公因数与最小公倍数)
  9. oracle中怎么算奇数,oracle - 如何在oracle中获取奇数列 - SO中文参考 - www.soinside.com...
  10. 常用的Webserver接口
  11. 中国平安云桌面的地址
  12. 谐波平衡 matlab,解非线性振动问题的摄动谐波平衡法
  13. 存储数据迁移解决方案
  14. 企业级数据服务总线规划
  15. c语言求开平方标准库函数,c语言如何求平方根 C语言中开平方函数是什么?
  16. 手把手教你通过Google Adsense“PIN码验证”
  17. 《老路用得上的商学课21—25》消费心理学(二)
  18. 玩转Fasttext
  19. 【软件工程】2022秋软工实践个人作业一
  20. Acwing算法—动态规划

热门文章

  1. A 跳高【中兴捧月神算师-算法精英挑战赛-比特派第一场】
  2. oracle 支持ltfs的厂商_归档技术推动线性磁带文件系统(LTFS)产品的发展
  3. 如何恢复电脑中的CHK文件?
  4. 联想thinkPad中锁屏壁纸的本地位置(联想软件商店)
  5. 一个月可以学会单片机嘛?单片机编程学多久?
  6. 工具 - 文本比较/对比 - 收集
  7. 国美理直气壮的停发员工工资
  8. DeBank和非小号网站的数据分析-实习工作小结
  9. 阿里云天池大数据竞赛——O2O优惠券使用预测(基于XGBoost)(附python Jupter代码)
  10. 配置mysql读写分离