本港台开奖现场直播 j2开奖直播报码现场
当前位置: 新闻频道 > IT新闻 >

码报:使用新式 C++ 访问 Windows 注册表(6)

时间:2017-07-11 15:22来源:本港台直播 作者:本港台直播 点击:
与 RegQueryValueEx 等低级别 API 相比,RegGetValue Win32 API 提供级别相对更高的接口来读取 Windows 注册表中的值。此外,RegGetValue 提供的接口还更为安全,例如,

与 RegQueryValueEx 等低级别 API 相比,RegGetValue Win32 API 提供级别相对更高的接口来读取 Windows 注册表中的值。此外,RegGetValue 提供的接口还更为安全,例如,可保证返回的字符串以正确的 NUL 结尾。尽管如此,RegGetValue 仍是 C 接口低级别 API,程序员需要注意很多细节,对它进行编程可能会生成更易出错的复杂代码。本文介绍了如何生成便捷易用且难以滥用的新式 C++ 接口来隐藏 RegGetValue API 的复杂性,同时简化了对 Windows 注册表的访问。此外,RegEnumValue API 也包装在更高级别的便捷 C++ 函数中,可用于枚举给定注册表项下的所有值。包含本文中介绍的函数和类的实现代码的源代码位于与本文相关联的可重用纯标头形式下载内容(Registry.hpp 文件)中。

Giovanni Dicanio是一位计算机程序员,专门研究 C++ 和 Windows OS,而且他还是 Pluralsight 作者 (bit.ly/GioDPS) 和 Visual C++ MVP。除了编程和编写课程,他还乐于在 C++ 论坛和社区中帮助其他人。通过电子邮件地址 [email protected]与他联系。他还在 msmvps.com/gdicanio 上发布博文。

衷心感谢以下技术专家对本文的审阅: David Cravey 和 Marc Gregoire

David Cravey 是 GlobalSCAPE 的企业架构师,负责多个 C++ 用户组,并曾四次荣膺 Visual C++ MVP。

Marc Gregoire 是一位来自比利时的高级软件工程师,他是比利时 C++ 用户组的创始人,编写了“Professional C++”(Wiley) 并合著了“C++ 标准库快速参考”(Apress),并且是许多书籍的技术编辑,在 2007 年因其 VC++ 方面的专业素养荣获年度 MVP 大。可以通过 [email protected]与 Marc 取得联系。

(责任编辑:本港台直播)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
推荐内容