우선.. 윈도우 시작프로그램에서 실행할 프로그램에관련된 레지스트리..
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
이곳에 모든 정보가 저장되어있다.. (윈도 부팅시 실행될 프로그램관련정보들이..)
이거만 알면...
레지스트리 읽기/쓰기 함수를 통해서 건드리면 될거같다..
int ReadRegVal(char *reg_path, char *key, char *val, int val_buf_size ) // reg읽기
{
HKEY phk=0;
DWORD nEC = REG_BINARY; // 바이너리모드로 읽기
DWORD size = val_buf_size; // 레지스트리읽기시 버퍼크기
memset(val,0,val_buf_size); //mem clear
RegOpenKey(HKEY_LOCAL_MACHINE,reg_path,&phk);
RegQueryValueEx(phk, key, NULL,&nEC, (LPBYTE)val, &size ); //읽기 값은 val에 저장
//val은 걍 맘편히 타입케스팅 바로 하셔서 쓰셔욧....
RegCloseKey(phk);
return 0;
}
int WriteRegVal(char *reg_path, char *key, char *val) //reg write
{
HKEY phk=0;
long nRet;
RegCreateKey(HKEY_LOCAL_MACHINE, reg_path, &phk);
nRet = RegSetValueEx(phk, key, 0, REG_SZ, (LPBYTE)val, strlen(val));
RegCloseKey(phk);
if(ERROR_SUCCESS == nRet) return 0;
return 1;
}
사용법:
레지스터 쓰기.
WriteRegVal("SOFTWARE\\Microsoft\\Windows", "Windows", "5.2" );
댓글