参考代码如下:
如果这样读取注册表键值,则很大程度上会出错,究其原因就在cbSubValueName和cbSubValueDate处,微软给这两个函数的前缀是__inout,也就是讲第一次运行RegEnumValue后会修改这两个变量的值,导致下一次运行显示没有足够的内存空间,这里每次运行前对两个变量进行赋值就可以了
本文探讨了使用Windows API函数RegEnumValue读取注册表键值时可能遇到的问题,并提供了一个示例代码片段来说明如何正确地为缓冲区分配大小以避免内存错误。
参考代码如下:
如果这样读取注册表键值,则很大程度上会出错,究其原因就在cbSubValueName和cbSubValueDate处,微软给这两个函数的前缀是__inout,也就是讲第一次运行RegEnumValue后会修改这两个变量的值,导致下一次运行显示没有足够的内存空间,这里每次运行前对两个变量进行赋值就可以了
1658

被折叠的 条评论
为什么被折叠?