C++怎么遍历注册表中一个文件的所有键值,并所有键值存放在一个文件中输出?

sinat_39485846 2017-07-27 10:25:11
最好附上完整程序,有main()的那种。拜托啦诸位大神!
...全文
514 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Rationalwh 2021-04-02
  • 打赏
  • 举报
回复
引用 2 楼 赵4老师 的回复:
在我眼中,间接调用命令行或GUI软件获取我想要的信息,跟调用相关底层或高层API获取,没有本质区别。


真大佬也
sinat_39485846 2017-10-16
  • 打赏
  • 举报
回复
多谢!不过我最后用的SHGetFolderPath函数
赵4老师 2017-07-27
  • 打赏
  • 举报
回复
在我眼中,间接调用命令行或GUI软件获取我想要的信息,跟调用相关底层或高层API获取,没有本质区别。
赵4老师 2017-07-27
  • 打赏
  • 举报
回复
C:\>reg /? REG Operation [Parameter List] Operation [ QUERY | ADD | DELETE | COPY | SAVE | LOAD | UNLOAD | RESTORE | COMPARE | EXPORT | IMPORT ] 返回代码: (除了 REG COMPARE) 0 - 成功 1 - 失败 要得到有关某个操作的帮助,请键入: REG Operation /? 例如: REG QUERY /? REG ADD /? REG DELETE /? REG COPY /? REG SAVE /? REG RESTORE /? REG LOAD /? REG UNLOAD /? REG COMPARE /? REG EXPORT /? REG IMPORT /? C:\>reg export /? REG EXPORT KeyName FileName Keyname ROOTKEY[\SubKey] (只是本地机器)。 ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ] SubKey 所选 ROOTKEY 下的注册表项的全名。 FileName 要导出的磁盘文件名。 /y 不用提示就强行覆盖现有文件。 例如: REG EXPORT HKLM\Software\MyCo\MyApp AppBkUp.reg 将注册表项 MyApp 的所有子项和值导出到文件 AppBkUp.reg C:\>reg query /? REG QUERY KeyName [/v [ValueName] | /ve] [/s] [/f Data [/k] [/d] [/c] [/e]] [/t Type] [/z] [/se Separator] KeyName [\\Machine\]FullKey Machine - 远程机器名称,省略当前机器的默认值。在远程机器上 只有 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_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 下的项、值和数据(默认) C:\>

64,643

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧