记得采纳啊
voidWriteReg()
{
//test1:在根结点上创建子键
CString
strSubKey=
"MySubKey"
HKEY
hkey1,
hkey2
long
lrt,
lRtVal
DWORD
dwdisposition=
REG_CREATED_NEW_KEY
if(
ERROR_SUCCESS
==
RegCreateKeyEx(
HKEY_CURRENT_USER,
strSubKey,
0,
NULL,
0,
KEY_CREATE_SUB_KEY
|
KEY_SET_VALUE,
NULL,
&hkey1,
&dwdisposition
)
)
//注:KEY_CREATE_SUB_KEY
|
KEY_SET_VALUE标志分别用于后面创建子键,后创建键值项,
{
//test2:在刚创建的子键(MySubKey)下再创建子键(
MySubSubKey)
lrt
=
RegCreateKeyEx(
hkey1,
"MySubSubKey",
0,
NULL,
0,
KEY_CREATE_SUB_KEY
|
KEY_SET_VALUE,
NULL,
&hkey2,
&dwdisposition
)
//test3:在第一步创建的子键MySubKey下增加键值项
CString
strValue="value
of
the
MySubKey's
valueItem"
lRtVal=
RegSetValueEx(
hkey1,
"valItem1",
0,
REG_SZ,
(const
byte
*)(LPCTSTR)strValue
,
strValue.GetLength()
+
1
)
//test4:在MySubSubKey下创建键值项
if(
lrt
==
ERROR_SUCCESS
)
{
strValue="value
of
the
MySubSubKey's
valueItem"
lRtVal=
RegSetValueEx(
hkey2,
"valItem1",
0,
REG_SZ,
(const
byte
*)(LPCTSTR)strValue
,
strValue.GetLength()
+
1
)
}
}
}
二,读注册表,
函数:RegOpenKeyEx,
RegQueryValueEx
void
ReadReg()
{
//test1,读取MySubSubKey下的valItem1值
CString
strSubkey=
"MySubKey\\MySubSubKey"
HKEY
hKey
char
szValue[100]={0}
if(
ERROR_SUCCESS
==
RegOpenKeyEx(
HKEY_CURRENT_USER,
strSubkey,
0,
KEY_QUERY_VALUE,
&hKey
)
)
{
DWORD
dwType=
REG_SZ
unsigned
long
nSize=
sizeof(szValue)
-
1
if(
ERROR_SUCCESS
==
RegQueryValueEx(
hKey,
"valItem1",
NULL,
&dwType,
(byte
*)szValue,
&nSize
)
)
{
int
a=0
}
}
}
读写注册表要注意访问标志,常用的有:
1,可增加子键:
KEY_CREATE_SUB_EY
2.
可增加键值项:KEY_SET_VALUE
3.可查询键值项:KEY_QUERY_VALUE
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)