将应用配置信息写在注册表中

来源:互联网 发布:淘宝智能版装修素材 编辑:程序博客网 时间:2024/06/08 09:18

由于要实现每次打开应用程序,根据配置信息设置界面,之前将配置信息写在文件中,但是由于是安装程序,在c盘中不好使,所以研究了下将配置信息保存到注册表中,每次从注册表中读取程序。

使用SetRegistryKey,GetProfileInt,WriteProfileInt,GetProfileString,WriteProfileString这五个函数将配置文件保存到注册表中。

1、在BOOL CCLASSAPP::InitInstance()函数中使用SetRegistryKey(_T("Local AppWizard-Generated Applications")),这个函数的功能是设置MFC程序的注册表访问键,并把读写ini文件的成员函数映射到读写注册表。

2、使用WriteProfileInt和WriteProfileString两个函数将值写到注册表项。

因为我是要将保存的网站写到注册表中,用循环语句实现:不同的网站要设置不同的名称。例子如下:

AfxGetApp()->WriteProfileInt("Settings", "Int", isopenSite);  
for(int i=0;i<m_site.size();i++){   
CString sz;
sz.Format("%s%d","String",i);
AfxGetApp()->WriteProfileString("Website", sz, m_site[i]); 
}  

3、使用GetProfileInt和GetProfileString来读取注册表项,例子如下:

isopenSite = AfxGetApp()->GetProfileInt("Settings", "Int", 0);  
CString sz;
for(int i=0;i<num;i++){  
sz.Format("%s%d","String",i);
CString sz1 = AfxGetApp()->GetProfileString("Website", sz, NULL);
m_site.push_back(sz1);
}  


原创粉丝点击