Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/130.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ RegCreateKeyExA函数返回错误\无效\参数(错误代码87)_C++_C_Windows_Winapi_Registry - Fatal编程技术网

C++ RegCreateKeyExA函数返回错误\无效\参数(错误代码87)

C++ RegCreateKeyExA函数返回错误\无效\参数(错误代码87),c++,c,windows,winapi,registry,C++,C,Windows,Winapi,Registry,我遇到了一个值为87的错误代码,它与error_INVALID_参数相关,如所示。对RegCreateKeyExA()函数的函数调用如下: RegCreateKeyExA(HKEY_本地_机器,“软件/测试/注册表测试”,0,NULL,REG_选项非易失性,KEY_ALL_访问,NULL,&createdKey,&dispositionValueOfCreatedKey) 在哪里, createdKey是HKEY类型的变量,声明为HKEY-createdKey createdkey的dispos

我遇到了一个值为87的错误代码,它与error_INVALID_参数相关,如所示。对
RegCreateKeyExA()
函数的函数调用如下:

RegCreateKeyExA(HKEY_本地_机器,“软件/测试/注册表测试”,0,NULL,REG_选项非易失性,KEY_ALL_访问,NULL,&createdKey,&dispositionValueOfCreatedKey)

在哪里,

createdKey
HKEY
类型的变量,声明为
HKEY-createdKey

createdkey的dispositionValueOfCreatedKey
DWORD
类型的变量,声明为
DWORD dispositionValueOfCreatedKey

目前,我还没有尝试过,也不知道有什么方法可以减轻这个错误,因为我相信,上述函数调用满足函数的MSFT文档中提到的所有参数要求


提前感谢。

注册表路径的组件必须用反斜杠(
\
)分隔,如果路径字符串未指定为原始字符串文字,则必须对其进行转义,以避免转义下一个对应字符,如
R(“dir\u 1\dir\u 2\dir\u 3”)
(MSFT编译器除外)或
R“dir\u 1\dir\u 2\dir\u 3”

组件分隔符是反斜杠(
\
),而不是正斜杠(
/
)。正如@IInspectable所指出的,您需要一个反斜杠分隔符,必须使用双反斜杠来指定,以避免“转义”下一个字符。@IInspectable哇!我真傻!我想我真的需要休息一下@AdrianMole“…您必须使用双反斜杠来指定,以避免“转义”下一个字符…”-除非使用,否则不需要进行双上转义,例如:
RegCreateKeyExA(…,R(“Software\Basil\RegistryTest”),…)
@hecate您可以发布一个答案,并接受它,因为其他人正在搜索此问题,而不是添加有问题的解决方案。