MFC注冊表類的使用

MFC中的CRegKey類,是注冊表操作類,用法如下:

員工經(jīng)過長期磨合與沉淀,具備了協(xié)作精神,得以通過團(tuán)隊的力量開發(fā)出優(yōu)質(zhì)的產(chǎn)品。創(chuàng)新互聯(lián)堅持“專注、創(chuàng)新、易用”的產(chǎn)品理念,因為“專注所以專業(yè)、創(chuàng)新互聯(lián)網(wǎng)站所以易用所以簡單”。公司專注于為企業(yè)提供網(wǎng)站設(shè)計制作、網(wǎng)站設(shè)計、微信公眾號開發(fā)、電商網(wǎng)站開發(fā),成都微信小程序,軟件按需網(wǎng)站開發(fā)等一站式互聯(lián)網(wǎng)企業(yè)服務(wù)。

(1)創(chuàng)建鍵函數(shù):

CRegKey  key;
long ret = key.Create(HKEY_LOCAL_MACHINE, 
	_T("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Scale3DC"),
	REG_NONE,
	REG_OPTION_NON_VOLATILE,
	KEY_WRITE | KEY_READ | KEY_WOW64_64KEY);
key.Close();
//在WIN10下須管理員權(quán)限

(2)打開鍵并寫入值:

int iMaxNumber = 100;
key.Open(HKEY_CURRENT_USER, _T("SOFTWARE\\TheSoft"));
key.SetStringValue(_T("Password"), _T("123"));
key.SetDWORDValue(_T("count"),iMaxNumber);
key.Close();

long ret1 = key.Open(HKEY_LOCAL_MACHINE,
_T("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Scale3DC"),
KEY_SET_VALUE | KEY_WOW64_64KEY);
if (ret1 == ERROR_SUCCESS)
{
  long ret =key.SetStringValue(_T("DisplayName"), _T("Scale3DC管理系統(tǒng)"));
  key.SetStringValue(_T("UninstallString"), GetApplicationPath() + _T("Uninstall.exe"));
  key.SetStringValue(_T("DisplayIcon"), GetApplicationPath() + _T("Scale3DC.exe"));
  key.SetStringValue(_T("DisplayVersion"), _T("v2018"));
  key.SetStringValue(_T("URLInfoAbout"), _T("http://www.zync.com"));
  key.SetStringValue(_T("Publisher"), _T("3DC科技有限公司"));
}
key.Close();

(3)讀取注冊表的信息:

DWORD dwNum;
BOOL bOpenReg = key.Open(HKEY_CURRENT_USER, _T("SOFTWARE\\TheSoft"));
//或者key.QueryValue(dwNum,_T("count"));
key.QueryDWORDValue(_T("count"),dwNum);

(4)刪除注冊的信息:

key.DeleteValue(_T("count"));

用API刪除注冊表中的鍵

VOID CScale3DCControl::DeleteMainKey()
{
	HKEY hKey;
	DWORD result;
	result = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
	    _T("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall"),
	    NULL, KEY_SET_VALUE|KEY_WOW64_64KEY, &hKey);//讀取注冊表串口信息
	if (ERROR_SUCCESS == result)
	{
		long lResult = ::RegDeleteKey(hKey, _T("Scale3DC"));
		if (lResult == ERROR_SUCCESS)
		{
			AfxMessageBox(_T("ok1"));
		}
	}
	else
	{
		::MessageBox(0, _T("DELETE ERROR!"), _T("Error"), 0);
	}
	RegCloseKey(hKey);
}

Win10系統(tǒng)須管理員權(quán)限

(5)讀注冊表

HKEY    hKey;
DWORD   result;
DWORD   dwType;
DWORD   sl = 255;
TCHAR   sz[255]; //存儲鍵值
result = RegOpenKeyEx(HKEY_LOCAL_MACHINE, 
_T("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\abc"),
NULL, KEY_ALL_ACCESS | KEY_WOW64_64KEY, &hKey);

if (ERROR_SUCCESS == result)
{
    result = RegQueryValueEx(hKey, _T("DisplayIcon"), 
           NULL, &dwType, (LPBYTE)sz, &sl);
    if (result == ERROR_SUCCESS)
    {
	RegCloseKey(hKey);
	return sz;
    }
}
else
{
	::MessageBox(0, _T("DELETE ERROR!"), _T("Error"), 0);
}
RegCloseKey(hKey);

網(wǎng)頁標(biāo)題:MFC注冊表類的使用
分享網(wǎng)址:http://bm7419.com/article44/jddohe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、域名注冊、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站內(nèi)鏈、移動網(wǎng)站建設(shè)、做網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計公司