|
구글링을 통해 레지스트리 작성법을 찾아 시험해보고 있는데요.
TRegistry * Reg = new TRegistry;
Reg->RootKey = HKEY_CURRENT_USER;
//Reg->RootKey = HKEY_LOCAL_MACHINE;
Reg->OpenKey("MyProgram\\TTT",true);
Reg->WriteString("Password", "1111"); //문자열, 정수, bool 등을 읽고 쓰는 메소드가 각각 있습니다...
Reg->CloseKey();
delete Reg;
위 소스를 찾아 실행해보니 HKEY_CURRENT_USER 에는 잘 작성이 되지만, HKEY_LOCAL_MACHINE 에는 작성이 되지 않네요.
LONG lResult;
char buffer[100];
HKEY hKey;
DWORD dwDesc;
char *path = "c:\\winnt\\system32\\notepad.exe"; // 노트 패드 경로
// 레지스트리 열고
RegOpenKeyEx(HKEY_LOCAL_MACHINE,"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", 0, KEY_ALL_ACCESS, &hKey);
// Set Registry Key & Value
lResult = RegCreateKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", 0,
buffer, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, NULL, &hKey, &dwDesc);
if(lResult == ERROR_SUCCESS)
{
RegSetValueEx(hKey, "abc", 0, REG_SZ, (BYTE*)path, strlen(path));
}
//레지스트리 닫고
RegCloseKey(hKey);
위의 소스도 마찬가지로 HKEY_LOCAL_MACHINE 에 작성이 안됩니다.
Windows7 64bit 환경입니다. HKEY_LOCAL_MACHINE 에 키를 넣으려면 어떻게 해야 하는지 도움 부탁드립니다.
|