首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在不运行Regedit的情况下读取和导出Windows注册表的子树?

问如何在不运行Regedit的情况下读取和导出Windows注册表的子树?
EN

Stack Overflow用户
提问于 2010-10-29 20:06:18
回答 1查看 1.2K关注 0票数 0

我有一个32位的C++程序,它可以收集诊断数据来帮助我们的软件排除故障。我希望它导出注册表的某个子树-类似于:

代码语言:javascript
复制
regedit.exe /e ExportResult.reg HKEY_LOCAL_MACHINE\SubTreeIWantToExport

问题是Regedit可能需要Vista及以上版本的特权提升,运行我的程序的用户可能没有足够的权限,但可能有足够的权限从该子树中读取。我还预见到64位系统上的SysWOW64会出现一些微妙的问题。所以运行Regedit不是一个好的选择。

当然,我的程序可以读取注册表本身,并以某种方式生成一个与.reg文件等效的文件,但实现该功能将是一种重复发明轮子的行为。

有没有其他方法可以从我的程序中读取和导出Windows注册表子树?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-10-29 21:15:17

不存在用于导出/导入注册表的单次Win32或.Net接口。

你可以像this那样做,但我认为你的要求是避免暴力。但是,与regedit一样,您可能想出的任何解决方案都需要构建在底层Win32 API之上。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4051658

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档