RegDeleteKeyValue和RegDeleteValue之间有什么区别?

4
我想知道RegDeleteKeyValue和RegDeleteValue在Win32API中的区别。
2个回答

4

4

RegDeleteValue()是传统函数,已经存在了22年。 RegDeleteKeyValue()是一个附加项,首次在Vista上可用。主要版本6,您必须将_WIN32_WINNT宏设置为0x600或更高才能使用它。无法在Windows XP、Server 2003或更早版本上工作。

版本6改变了几个与注册表相关的功能的行为,否则没有我见过的出色文档解释。但是这些更改看起来像微软试图通过恶意软件使它们更难利用。 RegDeleteValue()很适合,它是相当危险的函数。通过缓冲区溢出攻击hKey参数,给它预定义值之一,如HKEY_CURRENT_USER,攻击程序可以立即摧毁用户的机器。我认为,从未尝试过 :)

因此,您绝对需要考虑RegDeleteKeyValue()。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接