LONG WINAPI RegSetValueEx( _In_ HKEY hKey, ------① _In_opt_ LPCTSTR lpValueName, ------② _Reserved_ DWORD Reserved, ------③ _In_ DWORD dwType, ------④ _In_ const BYTE *lpData, ------⑤ _In_ DWORD cbData ------⑥ );
함수 설명 :
열려있는 레지스크리 키(hKey)를 이용하여 lpValueName에 명시된 항목 이름의 데이터 형식이나 내용을 설정하는데 사용하는 함수이다. 성공시 ERROR_SUCCESS를 반환한다.
① hKey :
현재 열어서 사용하고 있는 레지스트리 키에 대한 핸들을 명시하거나 미리 정의된 값을중 하나를 명시한다.
(RegCreateKeyEx 참고)
② lpValueName :
정보를 설정하고자 항목의 이름을 가지고 있는 문자열의 주소를 명시한다. (RegCreateKeyEx 참고)
③ lpReserved :
예약된 값으로 0을 넣어 주어야 한다.
④ dwType :
lpData에 들어있는 정보를 설정할 항목의 데이터 형식을 명시한다. 만약 해당 항목의 데이터 형식을 알지 못한다면 RegQueryValueEx함수를 이용하여 데이터 형식을 알아낼 수 있다.
⑤ lpData
설정할 항목에 사용할 데이터가 들어있는 메모리 공간의 주소를 명시한다. 해당 데이터가 문자열 형식 (REG_SZ)라면 NULL로 끝나는 문자열이여야 하고 다중 문자열(REG_MULTISZ)형식이라면 마지막에 NULL을 두번 연속 사용해야한다.
⑥ cbData :
lpData 매개변수에 사용한 메모리 공간의 크기를 명시한다. 만약 lpData가 문자열이라면 문자열의 크기를 보내주면 된다.
LONG WINAPI RegCloseKey(
_In_ HKEY hKey );
함수 설명 :
핸들을 반납한다. (닫는다) 성공시 ERROR_SUCCESS를 반환한다.
LONG WINAPI RegDeleteValue( _In_ HKEY hKey, -----① _In_opt_ LPCTSTR lpValueName -----② );
함수 설명 :
지정된 레지스트리 키로부터 값을 삭제한다.
① hkey :
현재 오픈되고 있는 키를 설정한다. (RegCreateKeyEx 참고)
② lpValueName :
삭제하는 값의 이름을 나타내는 문자열의 주소를 지정한다. 이 파라미터에 ("")의 주소 또는 0(NULL)을 지정하면 이름 없음의 값 또는 디폴트의 값이 삭제된다.
LONG WINAPI RegQueryValueEx( _In_ HKEY hKey, ------① _In_opt_ LPCTSTR lpValueName, ------② _Reserved_ LPDWORD lpReserved, ------③ _Out_opt_ LPDWORD lpType, ------④ _Out_opt_ LPBYTE lpData, ------⑤ _Inout_opt_ LPDWORD lpcbData ------⑥ );
함수 설정 :
열려있는 레지스트리 키를 이용하여 lpValueName에 명시괸 항목의 데이터 형식이나 내용을 얻는다. 성공하면 ERROR_SUCCESS 를 반환한다.
① hKey :
현재 오픈되고 있는 키를 설정한다. (RegCreateKeyEx 참고)
② lpValueName :
정보를 얻고자하는 항목의 이름을 가지고 있는 문자열의 주소를 명시한다. 이 문자열은 NULL로 끝나는 문자열이어야 한다.
③ lpReserved :
예약된 값으로 0을 넣는다.
④ lpType :
지정된 값에 저장된 데이터의 종류를 나타내는 코드를 받는 변수 포인터이다. 데이터 타입이 필요없는경우 NULL을 지정해 줄 수 있다.
값 |
유형 |
REG_BINARY |
어떤 형태의 이진 데이터. |
REG_DWORD |
32 비트 숫자. |
REG_DWORD_LITTLE_ENDIAN |
리틀 엔디안 형식의 32 비트 숫자. 창은 리틀 엔디안 컴퓨터 아키텍처에서 실행되도록 설계되었습니다 따라서,이 값은 Windows 헤더 파일에있는 REG_DWORD로 정의됩니 다. |
REG_DWORD_BIG_ENDIAN |
빅 엔디안 형식의 32 비트 숫자. 일부 UNIX 시스템은 빅 엔디안 아키텍처를 지원합니다. |
REG_EXPAND_SZ |
환경 변수 (예를 들어, "% 경로 %")로 확장되지 않은 참조를 포함 null로 끝나는 문자열입니다. 그것은 당신이 유니 코드 또는 ANSI 함수를 사용 하는지 여부에 따라 유니 코드 또는 ANSI 문자열이됩니다. 환경 변수 참조를 확장하려면 사용ExpandEnvironmentStrings의 기능을. |
REG_LINK |
호출에 의해 생성 된 심볼릭 링크의 대상 경로를 포함하는 null로 끝나는 유니 코드 문자열 RegCreateKeyEx REG_OPTION_CREATE_LINK과 기능을 |
REG_MULTI_SZ |
빈 문자열 (\ 0)로 종료 null로 끝나는 문자열의 순서 |
REG_NONE |
이 정의 값을 입력합니다. |
REG_QWORD |
64 비트 숫자입니다. |
REG_QWORD_LITTLE_ENDIAN | 리틀 엔디안 형식의 64 비트 숫자입니다. |
REG_SZ | null로 끝나는 문자열입니다. 이것은 유니 코드 또는 ANSI 함수를 사용하는지 여부에 따라 하나 유니 코드 또는 ANSI 문자열이어야합니다. |
⑤ lpData :
항목의 값이 저장될 메모리 공간의 주소를 명시한다. 만약, 항목의 내용이 필요 없다면 NULL을 명시한다.
⑥ lpcdData :
lpData 매개변수에 사용한 메모리 공간의 크기를 기록할 변수의 주소를 명시한다.
'Programming > Windows&C#' 카테고리의 다른 글
[Windows/WinAPI] __declspec(dllimport), __declspec(dllexport) (0) | 2013.10.25 |
---|---|
[Windows/WinAPI] CreateFileMapping, MapViewOfFile, UnmapViewOfFile (0) | 2013.10.24 |
[Windows/WinAPI] CreateProcess, GetStartupInfo, GetStdHandle, WaitForSingleObject, ResumeThread(실습6) (0) | 2013.10.24 |
[Windows/WinAPI] RegOpenKeyEx, RegEnumKeyEx, RegEnumValue (0) | 2013.10.21 |
[Windows/WinAPI] RegCreateKeyEx, (0) | 2013.10.20 |