函數簡介:
LONG CReg::SetValue(HKEY hKeyRoot, LPCTSTR lpSubKey, LPCTSTR pszKey, LPCTSTR pszData)
函數說明:
設置指定鍵的值,若該鍵不存在,則創建該鍵。
返回值:
若操作成功,則返回ERROR_SUCCESS。
若操作失敗,則返回一個非零值。可以通過調用FormatMessage函數,並使用
FORMAT_MESSAGE_FROM_SYSTEM標志得到這個錯誤值的描述。
參數說明:
hKeyRoot:根鍵,如HKEY_CURRENT_USER、HKEY_LOCAL_MACHINE等
lpSubKey:字符串形式的子鍵名稱,如SoftWare\Windows
pszKey:需要設置值的健的名稱
psaData:欲設置的新值
LONG CReg::GetValue(HKEY hKeyRoot, LPCTSTR lpSubKey, LPCTSTR pszKey, CString &sval)
函數說明:
獲得指定鍵的值,若該鍵不存在,則返回一個錯誤值。
返回值:
若操作成功,則返回ERROR_SUCCESS。
若操作失敗,則返回一個非零值。可以通過調用FormatMessage函數,並使用
FORMAT_MESSAGE_FROM_SYSTEM標志得到這個錯誤值的描述。
參數說明:
hKeyRoot:根鍵,如HKEY_CURRENT_USER、HKEY_LOCAL_MACHINE等
lpSubKey:字符串形式的子鍵名稱,如SoftWare\Windows
pszKey:需要設置值的健的名稱
sval:存儲鍵值的字符串
以上兩個函數只能操作字符串鍵值。
使用方法:
比如要獲得HKEY_CURRENT_USER\\Software\\MyApp\\Set鍵的值,可以這樣操作:
CString strset;
CReg::GetValue(HKEY_CURRENT_USER, LPCTSTR("Software\\MyApp"), LPCTSTR("Set"), &strset);
要設置HKEY_CURRENT_USER\\Software\\MyApp\\Set鍵的值,可以這樣操作:
CString strset = _T("New Value")
CRet::SetValue(HKEY_CURRENT_USER, LPCTSTR("Software\\MyApp"), LPCTSTR("Set"), strset.GetBuffer(strset.GetLength)));
當然,以上的函數需要MFC的支持,你也可以稍微修改一下,就可以不需要MFC的支持。