RegSetValue的参数用法,该怎么解决

RegSetValue的参数用法ret RegSetValue(hKey, lpSubKey, REG_SZ, lpData, cbData)关于cbData第1种说法:c

RegSetValue的参数用法
ret = RegSetValue(hKey, lpSubKey, REG_SZ, lpData, cbData)
关于cbData
第1种说法:cbData=len(lpData)+1
第2种说法:cbData=len(lpData)
第3种说法:cbData=0&
第4种说法:cbData=MAX_PATH(MAX_PATH=260)
似乎这4种说法都成立,都能够成功修改注册表,并且返回值都为0。
这么说来,cbData就无意义了?其值可以随便设置了?
[解决办法]
可能要看以什么形式写入。。
字符串,还是DWORD,还是二进制,可能这个参数需要不同。
[解决办法]
我一般是写入字符串,cbData试过几个值,都能成功
[解决办法]
字符串这个值肯定不需要用了,你试试二进制写入
[解决办法]
我试过了,二进制写入不了,因为RegSetValue函数仅能修改注册表每个项中的“默认”值,而“默认”值必须是字符串,因此,此函数只能写入字符串值,二进制不是用这个函数写的。
[解决办法]
RegSetValue函数仅能修改注册表每个项中的“默认”值?那修改非默认值用哪个函数呢?