MFC类:向注册表或者ini文件写入数据

来源:互联网 发布:js单例模式 编辑:程序博客网 时间:2024/05/22 18:22

//在CTestApp类的InitInstance()函数的初始化

//该函数设置的是CwinApp的成员变量m_pszRegistryKey

//设置应用程序的配置信息保存在注册表或INI文件的什么位置

//该信息存储在HKEY_CURRENT_USE\Software\应用程序向导生成的本地应用程序\XXXX 下面

SetRegistryKey(_T("应用程序向导生成的本地应用程序"));

//将信息写入注册表  

AfxGetApp()->WriteProfileString(_T("TestDlg"),_T("admin"),_T("12345"));

 

说明:

1. BOOL WriteProfileString( LPCTSTR lpszSection, LPCTSTR lpszEntry, LPCTSTRlpszValue );

lpszSection 指向一个以null结尾的字符串,指定了包含入口的部分。即为m_pszRegistryKey设置的注册表项的子项。

lpszEntry 指向一个以null结尾的字符串,指定了包含要写入值的入口的部分。对应写入字符串的键值,注册表中的名称部分。

lpszValue 指向要写入的字符串,注册表中的数据部分。

2. 类似的函数还有 CWinApp::WriteProfileInt() ::WriteProfileString() 对于::WriteProfileString()函数,会将信息写入系统的win.ini文件中。

3. 当在调用CwinApp::WriteProfileString()时,未调用SetRegistryKey(),那么信息就会被写入系统Window目录下的XXX.ini文件中,或者写入win.ini文件中,其中XXX表示你的应用程序的名字。

4. 相反的读取里面的数据,就可以使用对应的CWinApp::GetProfileInt(),返回值为 UINT :在Windows 3.0和3.1中表示16位的无符号整数,在Win32中表示32位的无符号整数。CWinApp::GetProfileString(),返回值CString,参数和对应的Write函数一样。