我一直在玩C++注册表函数,并且试图使RegCopyTree运行,但是每次尝试时,都会出现类似
ERROR_FILE_NOT_FOUND
或者
ERROR_ACCESS_DENIED.
我正在以管理员身份运行该程序,并且所有其他注册表功能都可以正常工作。
这是我正在使用的代码:
HKEY destinationKey;
RegCreateKeyEx(getRootKeyFromCode(rootKeyCode),
destinationKeyPathNative, 0, NULL, 0, 0, NULL,
&destinationKey, NULL);
RegCopyTree(INSERT_ROOT_KEY_HERE,
INSERT_ORIGINAL_KEY_PATH_HERE, destinationKey);
RegCloseKey(destinationKey);
我已经删除了错误处理和其他一些不相关的部分。
最佳答案
目标键句柄应该具有写访问权,以便能够复制到它。在未指定访问方式的情况下调用RegCreateKeyEx()
失败或未授予写访问权限。尝试使用KEY_WRITE
或KEY_CREATE_SUB_KEY
作为第六个参数。