VC++读、写注册表

本文介绍了如何使用VC++进行注册表的读写操作,包括创建和设置键值,提供了详细的步骤和实例代码,帮助开发者掌握这一技能。

系统注册表中存有很多重要的信息,我们有必要掌握比较简单地写入和读取注册的表的方法。下面结合实例来说明(完整实例可在我的优快云资源中下载:http://download.youkuaiyun.com/detail/margin1988/3677190):

1.写注册表:

HKEY hSubKey;
DWORD lpdw;

(1)创建“项”(键):

RegCreateKeyEx(HKEY_LOCAL_MACHINE,"Software\\Reg\\Admin",0,NULL,REG_OPTION_NON_VOLATILE,KEY_WRITE,NULL,&hSubKey,&lpdw);
//REG_OPTION_NON_VOLATILE:保存,重启还在;REG_OPTION_VOLATILE:不保存,重启不在。

(2)设置“值”(键值):

RegSetValueEx(hSubKey,"Manager",0,REG_SZ,(LPBYTE)"Margin",strlen("Margin"));
(3)释放注册“项”(键)的句柄:

RegCloseKey(hSubKey);

2.读取注册表:

(1)打开注册表中的该“项”(键):

HKEY hKEY;//键
long ret = ::RegOpenKeyEx(HKEY_LOCAL_MACHINE,"Software\\Reg\\Admin",0, KEY_READ,&hKEY);
if(ret!=ERROR_SUCCESS) 
{
	MessageBox("错误: 查询无法打开有关的hKEY!");
	return;
}
(2)读取指定“值”的数据:

unsigned char tmp[256]="\0"; //读出的数据
DWORD type=REG_SZ;
DWORD size=256;//必须大于你的键值字符长度
ret=::RegQueryValueEx(hKEY,"Manager",NULL,&type,tmp,&size);
if(ret!=ERROR_SUCCESS)
{
	MessageBox("错误:无法查询有关注册表信息!");
	return;
}
// 数据类型转化:unsigned char *CString〔这也是一个小知识点〕
CString tmpstring; //读出的数据
tmpstring.Format("%s",tmp);

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值