old drawer/C, C++, MFC
[C/C++] 레지스트리 사용법
A.Step
2013. 1. 11. 10:25
아래는 간단히 정리된 레지스트리 사용법입니다.
MYAPP부분에 프로그램이름을 넣고 사용하시면 간단할 것입니다.
#define REGISTRY_ADDRESS HKEY_LOCAL_MACHINE\SOFTWARE\MYAPP
void m_RegWrite(const char* regItemName, const char* value)
{
HKEY m_hRegsKey;
RegCreateKey(HKEY_CURRENT_USER, REGISTRY_ADDRESS, &m_hRegsKey);
RegSetValueEx(m_hRegsKey, // subkey handle
regItemName, // value name
0, // must be zero
REG_SZ, // value type canbe REG_DWORD,
(LPBYTE) value, // pointer to value data
strlen(value) + 1); // length of value data
regItemName, // value name
0, // must be zero
REG_SZ, // value type canbe REG_DWORD,
(LPBYTE) value, // pointer to value data
strlen(value) + 1); // length of value data
RegCloseKey(m_hRegsKey);
}
}
void m_RegWrite(const char* regItemName, unsigned long value)
{
HKEY m_hRegsKey;
RegCreateKey(HKEY_CURRENT_USER, REGISTRY_ADDRESS, &m_hRegsKey);
{
HKEY m_hRegsKey;
RegCreateKey(HKEY_CURRENT_USER, REGISTRY_ADDRESS, &m_hRegsKey);
RegSetValueEx(m_hRegsKey, // subkey handle
regItemName, // value name
0, // must be zero
REG_DWORD, // value type
(LPBYTE) &value, // pointer to value data
sizeof(DWORD)); // length of value data
regItemName, // value name
0, // must be zero
REG_DWORD, // value type
(LPBYTE) &value, // pointer to value data
sizeof(DWORD)); // length of value data
RegCloseKey(m_hRegsKey);
}
}
void m_RegRead(const char* regItemName, char* outValue)
{
HKEY m_hRegsKey;
RegCreateKey(HKEY_CURRENT_USER, REGISTRY_ADDRESS, &m_hRegsKey);
{
HKEY m_hRegsKey;
RegCreateKey(HKEY_CURRENT_USER, REGISTRY_ADDRESS, &m_hRegsKey);
DWORD size = MAX_PATH+1;
unsigned long ValueType = REG_SZ;
RegQueryValueEx(m_hRegsKey, regItemName,
NULL, &ValueType, (unsigned char *)outValue, &size);
unsigned long ValueType = REG_SZ;
RegQueryValueEx(m_hRegsKey, regItemName,
NULL, &ValueType, (unsigned char *)outValue, &size);
RegCloseKey(m_hRegsKey);
}
}
void m_RegRead(const char* regItemName, unsigned long* outValue)
{
HKEY m_hRegsKey;
RegCreateKey(HKEY_CURRENT_USER, REGISTRY_ADDRESS, &m_hRegsKey);
{
HKEY m_hRegsKey;
RegCreateKey(HKEY_CURRENT_USER, REGISTRY_ADDRESS, &m_hRegsKey);
DWORD size = sizeof(DWORD);
unsigned long ValueType = REG_DWORD;
RegQueryValueEx(m_hRegsKey, regItemName,
NULL, &ValueType, (unsigned char *)&outValue, &size);
unsigned long ValueType = REG_DWORD;
RegQueryValueEx(m_hRegsKey, regItemName,
NULL, &ValueType, (unsigned char *)&outValue, &size);
RegCloseKey(m_hRegsKey);
}
}