关于写入注册表的函数
我的程序想在用户输入参数後将该参数值记住,以便下次启动后使用,得知一种方法是写入注册表,但我不知从何入手,请各位大虾赐教. 问题点数:50、回复次数:11Top
1 楼qiangsheng(做人很厚道)回复于 2001-08-30 19:24:24 得分 0
用APITop
2 楼wmouse(山水)回复于 2001-08-30 19:32:17 得分 0
哎呀老大,总得告诉我是什么api函数吧!Top
3 楼mn_th(mn)回复于 2001-08-30 19:32:31 得分 5
msdn搜RegCreateKey
或者看《Windows高级编程指南>18章Top
4 楼wmouse(山水)回复于 2001-08-30 19:39:36 得分 0
这本书有下载吗?Top
5 楼xianglusong(向陆松)回复于 2001-08-30 22:18:44 得分 5
RegCreateKey,
RegOpenKeyEx.Top
6 楼xianglusong(向陆松)回复于 2001-08-30 22:20:08 得分 0
RegQueryValueTop
7 楼jiangsheng(蒋晟.Net[MVP])回复于 2001-08-30 22:25:13 得分 10
CWinApp::GetProfilexxx
CWinApp::WriteProfilexxxTop
8 楼ni_ch(泥巴)回复于 2001-08-30 22:32:38 得分 15
int CClockApp::GetRegInt(LPCTSTR lpSubKey, LPCTSTR lpKey)
{
HKEY hKey = OpenReg();
::RegOpenKey(hKey, lpSubKey,&hKey);
int nRet = 0;
int sz = sizeof(int);
int Type = REG_DWORD;
if(
ERROR_SUCCESS ==
::RegQueryValueEx
(hKey, lpKey, 0, (LPDWORD)&Type, (LPBYTE)&nRet, (LPDWORD)&sz)
)
{
::RegCloseKey(hKey);
return nRet;
}
else
{
::RegCloseKey(hKey);
return 0;
}
}
void CClockApp::GetRegString(LPCTSTR lpSubKey, LPCTSTR lpKey, LPTSTR lpValue, int nBuffer)
{
HKEY hKey = OpenReg();
::RegOpenKey(hKey, lpSubKey, &hKey);
int nType = REG_SZ;
::RegQueryValueEx(hKey, lpKey, 0, (LPDWORD)&nType, (LPBYTE)lpValue, (LPDWORD)&nBuffer);
::RegCloseKey(hKey);
}
HKEY CClockApp::OpenReg()
{
HKEY hKey;
::RegOpenKey(HKEY_LOCAL_MACHINE,"SoftWare",&hKey);
::RegOpenKey(hKey, "Clock",&hKey);
return hKey;
}
void CClockApp::WriteRegInt(LPCTSTR lpSubKey, LPCTSTR lpKey, int nvalue)
{
HKEY hKey = OpenReg();
::RegOpenKey(hKey, lpSubKey, &hKey);
::RegSetValueEx(hKey, lpKey, 0, REG_DWORD, (LPBYTE)&nvalue, sizeof(int));
::RegCloseKey(hKey);
}
void CClockApp::WriteRegString(LPCTSTR lpSubKey, LPCTSTR lpKey, LPCTSTR lpValue)
{
HKEY hKey = OpenReg();
::RegOpenKey(hKey, lpSubKey, &hKey);
::RegSetValueEx(hKey, lpKey, 0, REG_SZ, (LPBYTE)lpValue, strlen(lpValue));
::RegCloseKey(hKey);
}
==========================================
我正在用,好好看看MSDN就是!!!Top
9 楼aisn(nini)回复于 2001-08-31 02:03:23 得分 15
最简单的方法:
CString r;
r=AfxGetApp()->GetProfileString("应用","key","default keyvalue");
AfxGetApp()->WriteProfileString("应用","key",r);
Top
10 楼hongyucn(宏宇)回复于 2001-08-31 06:42:10 得分 0
其实用系统的API就行了,我觉得用MFC就是一个字烦,两个字很烦,三个字非常烦,四个字十分的烦!Top
11 楼wmouse(山水)回复于 2001-09-04 17:57:49 得分 0
谢谢大家,20分太少,我再加一点,希望大家以后多多帮忙!Top




