在win7系统下,MFC如何实现创建、写入和读取注册表
在win7系统下,MFC怎么实现创建、写入和读取注册表
我就是想把软件的部分数据初始化,因此就像创建并写入初始数据到注册表中去,当程序执行时从注册表中读取数据。希望会的大哥帮帮忙,举个例子的话最好了。感激不尽了!
------解决方案--------------------
请查找MSDN关于注册表的API,例如RegOpenKeyEx
------解决方案--------------------
一个例子:
我就是想把软件的部分数据初始化,因此就像创建并写入初始数据到注册表中去,当程序执行时从注册表中读取数据。希望会的大哥帮帮忙,举个例子的话最好了。感激不尽了!
------解决方案--------------------
请查找MSDN关于注册表的API,例如RegOpenKeyEx
------解决方案--------------------
一个例子:
#include <windows.h>
#include <stdio.h>
void main()
{
HKEY hkey;
char Author[100] = "reg operating";
char Organization[100] = "Internet";
char City[100] = "CHDU";
bool State = true;
unsigned char KeyBuffer[50];
DWORD Type = 0;
DWORD DataLen = 1024;
memset(KeyBuffer, 0, sizeof(KeyBuffer));
if (RegOpenKeyEx(HKEY_CURRENT_USER, "Software\\A New Program\\Information", 0, KEY_ALL_ACCESS, &hkey) != ERROR_SUCCESS)
{
if (RegCreateKey(HKEY_CURRENT_USER, "Software\\A New Program\\Information", &hkey) != ERROR_SUCCESS)
{
printf("RegCreateKey failed with Erro \n");
return ;
}
}
if (RegSetValueEx(hkey, "Organization", 0, REG_SZ, (BYTE*)Organization, 100) != ERROR_SUCCESS)
{
printf("RegSetValueEx failed with Erro \n");
return ;
}
if (RegSetValueEx(hkey, "Author", 0, REG_SZ, (BYTE*)Author, 100) != ERROR_SUCCESS)
{
printf("RegSetValueEx failed with Erro \n");
return ;
}
if (RegSetValueEx(hkey, "City", 0, REG_SZ, (BYTE*)City, 100) != ERROR_SUCCESS)
{
printf("RegSetValueEx failed with Erro \n");
return ;
}
if (RegSetValueEx(hkey, "State", 0, REG_DWORD, (BYTE*) &State, 4) != ERROR_SUCCESS)
{
printf("RegSetValueEx failed with Erro \n");
return ;
}
if (RegCloseKey(hkey) != ERROR_SUCCESS)
{
printf("RegCloseKey failed with Erro \n");
return ;
}
if (RegOpenKeyEx(HKEY_CURRENT_USER, "Software\\A New Program\\Information", 0, KEY_ALL_ACCESS, &hkey) == ERROR_SUCCESS)