MFC 注册表

这篇具有很好参考价值的文章主要介绍了MFC 注册表。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

打开注册表

MFC 注册表,mfc,c++

void CREGDemoDlg::OnBnClickedBtnOpen()
{
	//打开注册表
	HKEY hKey;
	if (ERROR_SUCCESS != RegOpenKeyEx(HKEY_CURRENT_USER, L"SOFTWARE\\Baidu.com", 0, KEY_ALL_ACCESS, &hKey))
	{
		MessageBox(L"打开注册表失败");
		return;
	}
}

MFC 注册表,mfc,c++

对注册表的键的操作

创建子键

MFC 注册表,mfc,c++

//创建子键
	HKEY hKey;
	DWORD dwDisposition;
	if (ERROR_SUCCESS != RegCreateKeyEx(HKEY_CURRENT_USER, L"Software\\Baidu.com\\12345", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_WRITE, NULL, &hKey, &dwDisposition))
	{
		MessageBox(L"创建失败");
	}

删除子键

  //删除子键
	RegDeleteKey(HKEY_CURRENT_USER, L"Software\\Baidu.com\\12345");

遍历子键

MFC 注册表,mfc,c++

  //打开注册表
	HKEY hKey;
	if (ERROR_SUCCESS != RegOpenKeyEx(HKEY_CURRENT_USER, L"Software\\2345.com", 0, KEY_ENUMERATE_SUB_KEYS, &hKey))
	{
		MessageBox(L"打开注册表失败");
		return;
	}

	DWORD dwIndex = 0;
	TCHAR szName[MAX_PATH];
	LONG result;
	while (1)
	{
		result = RegEnumKey(hKey, dwIndex, szName, MAX_PATH);

		if (result == ERROR_NO_MORE_ITEMS || result == ERROR_INVALID_HANDLE)
			break;
		else
		{
			szName.Format(L"%s\r\n", szName);

			int nLength = m_edit.GetWindowTextLength();
			m_edit.SetSel(nLength, -1);

			m_edit.ReplaceSel(szName);
		}

		dwIndex++;
	}
	
	RegCloseKey(hKey);

对注册表值的操作

读取值

MFC 注册表,mfc,c++

	CString str;
	HKEY hKey;
	if (ERROR_SUCCESS != RegOpenKeyEx(HKEY_CURRENT_USER, L"SOFTWARE\\Baidu.com\\BaiduYunGuanjia", 0, KEY_ALL_ACCESS, &hKey))
	{
	
		str.Format(L"打开注册表失败.错误代号:%d",GetLastError());
		MessageBox(str);
		return;
	}

	DWORD dwType = REG_SZ;
	TCHAR szData[MAX_PATH] = {0};
	DWORD dwSize = 0;
	//操作两遍
	RegQueryValueEx(hKey, L"Version", NULL, &dwType,NULL, &dwSize);

	str.Format(L"第一次查询.错误代号:%d", GetLastError());
	MessageBox(str);

	RegQueryValueEx(hKey, L"Version", NULL, &dwType,(LPBYTE)szData, &dwSize);

	UpdateMsg(szData);
	RegCloseKey(hKey)
void CREGDemoDlg::UpdateMsg(CString str)
{
	str.Format(L"%s\r\n", str);

	int nLength = m_edit.GetWindowTextLength();
	m_edit.SetSel(nLength, -1);

	m_edit.ReplaceSel(str);
}

MFC 注册表,mfc,c++

设置值

    CString str;
	HKEY hKey;
	if (ERROR_SUCCESS != RegOpenKeyEx(HKEY_CURRENT_USER, L"Software\\Microsoft\\Windows\\CurrentVersion\\Run", 0, KEY_ALL_ACCESS, &hKey))
	{
		
		str.Format(L"打开注册表失败.错误代号:%d",GetLastError());
		MessageBox(str);
		return;
	}

	
	TCHAR szValue[MAX_PATH] = {0};
	GetModuleFileName(NULL, szValue, MAX_PATH);//设置开机自启动

	//RegSetValueEx(hKey, L"张三", 0, REG_SZ, (const BYTE*)szValue, MAX_PATH);//删除

	

	RegCloseKey(hKey);

MFC 注册表,mfc,c++文章来源地址https://www.toymoban.com/news/detail-720091.html

到了这里,关于MFC 注册表的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 玩转注册表

           很多人都认识注册表,但是几乎没人搞懂过注册表。我来带大家玩转注册表,做这篇文章就想记录一下注册表里的一些路径(难找,记不住!),本文中我会介绍一些实用的利用注册表进行内网权限维持的一个思路和方法。没学网安的,会更了解注册表;大佬就复习

    2024年02月05日
    浏览(30)
  • Unity 注册表操作

    内容将会持续更新,有错误的地方欢迎指正,谢谢!   Unity 注册表操作       TechX 坚持将创新的科技带给世界! 拥有更好的学习体验 —— 不断努力,不断进步,不断探索 TechX —— 心探索、心进取! 助力快速掌握 Registry 注册表操作 为初学者节省宝贵的学习时间,避免困惑

    2024年02月02日
    浏览(28)
  • 注册表操作01

    注册表的组织方式主要分为 根键 、 子键 和 键值项 三部分。 (1)根键,可以把它们理解成磁盘的五个分区。 1.HKEY_CLASSES_ROOT; 2.HKEY_CURRENT_USER; 3.HKEY_LOCAL_MACHINE; 4.HKEY_USERS; 5.HKEY_CURRENT_CONFIG; (2)子键,可以有多个子键和键值项。 (3)键值项由三部分组成,分别为:名称

    2024年02月03日
    浏览(25)
  • 深入注册表监控

    注册表是windows的重要数据库,存放了很多重要的信息以及一些应用的设置,对注册表进行监控并防止篡改是十分有必要的。在64位系统下微软提供了 CmRegisterCallback 这个回调函数来实时监控注册表的操作,那么既然这里微软提供了这么一个方便的接口,病毒木马自然也会利用

    2024年02月08日
    浏览(25)
  • 【Windows基础】注册表

    注册表是Windows操作系统、硬件设备以及客户应用程序得以正常运行和保存设置的 核心\\\"数据库\\\" ,也可以说是一个非常巨大的 树状分层结构 的 数据库系统 注册表记录了用户安装在计算机上的软件和每个程序的相互关联信息,它包括了计算机的硬件配置,包括自动配置的即插

    2024年02月04日
    浏览(38)
  • Windows注册表清理

    伴随着系统运行时间不断增长,我们的电脑 注册表 中累积了许多垃圾文件。这些垃圾文件都是我们平常安装与卸载程序所留下的无用注册表信息,时间一长,垃圾文件与信息越来越多,我们电脑的运行速度越来越慢。 ​ 而且部分软件由于删除方式不对,导致一些残留注册表

    2024年02月08日
    浏览(35)
  • DOS下操作注册表

    下面以彻底关闭window10 操作为背景,通过命令行对注册表进行操作. 执行命令需要管理员权限 如果目录中存在空格 需要双引号 hklm为 HKEY_LOCAL_MACHINE 的缩写 查询: QUERY 添加: ADD 删除: DELETE 复制: COPY 保存: SAVE /t 表示 类型 如下 /v 表示 键名 效果如下图 /d 表示 键值 效果如

    2024年02月10日
    浏览(32)
  • 【Windows注册表内容详解】

    一、什么是注册表 注册表是windows操作系统、硬件设备以及客户应用程序得以正常运行和保存设置的核心“数据库”,也可以说是一个非常巨大的树状分层结构的数据库系统。 注册表记录了用户安装在计算机上的软件和每个程序的相互关联信息,它包括了计算机的硬件配置,

    2024年02月09日
    浏览(31)
  • Windows技巧之注册表

    介绍 注册表是Windows操作系统中的一个核心数据库,其中存放着各种参数,直接控制着Windows的启动、硬件驱动程序的装载以及一些Windows应用程序的运行,从而在整个系统中起着核心作用。这些作用包括了软、硬件的相关配置和状态信息,比如注册表中保存有应用程序和资源管

    2023年04月08日
    浏览(35)
  • windows注册表启动项

    实际应急响应案例时,发现很多非常规的启动项以及ARK工具未涵盖的启动项,故收集资料对注册表有关的启动项进行总结,以后处置病毒无从下手时可以考虑从启动项排查。 1.Load注册键 介绍该注册键的资料不多,实际上它也能够自动启动程序。位置: HKEY_CURRENT_USERSoftwareMi

    2024年02月05日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包