다음을 통해 공유


SHRegWriteUSValueA 함수(shlwapi.h)

사용자별 하위 트리(HKEY_CURRENT_USER 또는 HKEY_LOCAL_MACHINE)의 레지스트리 하위 키에 값을 씁니다.

구문

LSTATUS SHRegWriteUSValueA(
  [in] HUSKEY     hUSKey,
  [in] LPCSTR     pszValue,
  [in] DWORD      dwType,
  [in] const void *pvData,
  [in] DWORD      cbData,
  [in] DWORD      dwFlags
);

매개 변수

[in] hUSKey

형식: HUSKEY

현재 열려 있는 레지스트리 하위 키에 대한 핸들입니다. 하위 키는 KEY_SET_VALUE 액세스 권한으로 열려 있어야 합니다. 자세한 내용은 레지스트리 키 보안 및 액세스 권한을 참조하세요.

이 핸들은 SHRegOpenUSKey 함수를 통해 가져올 수 있습니다.

[in] pszValue

형식: LPCTSTR

값의 이름을 지정하는 null로 끝나는 문자열에 대한 포인터입니다. 이 값은 hUSKey로 지정된 하위 키의 항목입니다. 이 이름의 값이 하위 키에 아직 없는 경우 추가됩니다.

이 매개 변수가 NULL 이거나 빈 문자열인 경우 함수는 하위 키의 기본값에 대한 형식과 데이터를 설정합니다.

[in] dwType

형식:DWORD

pszValue로 지정된 값에 저장할 데이터의 형식입니다. Winnt.h 및 Wdm.h에 정의된 다음 레지스트리 값 형식 중 하나입니다.

REG_NONE(0x00000000)

REG_SZ(0x00000001)

REG_EXPAND_SZ(0x00000002)

REG_BINARY(0x00000003)

REG_DWORD(0x00000004)

REG_DWORD_LITTLE_ENDIAN(0x00000004)

REG_DWORD_BIG_ENDIAN(0x00000005)

REG_MULTI_SZ(0x00000007)

REG_RESOURCE_LIST(0x00000008)

REG_FULL_RESOURCE_DESCRIPTOR(0x00000009)

REG_RESOURCE_REQUIREMENTS_LIST(0x0000000A)

REG_QWORD(0x0000000B)

REG_QWORD_LITTLE_ENDIAN(0x0000000B)

[in] pvData

형식: const void*

pszValue로 지정된 값에 대해 설정할 데이터에 대한 포인터입니다. REG_SZ 같은 문자열 기반 형식의 경우 문자열은 null로 종료되어야 합니다. REG_MULTI_SZ 데이터 형식을 사용하면 문자열을 두 개의 null 문자로 종료해야 합니다. 경로의 백슬래시 앞에 다른 백슬래시가 이스케이프 문자로 와야 합니다. 예를 들어 "C:\mydir\myfile" 문자열을 저장하려면 "C:\mydir\myfile"을 지정합니다.

[in] cbData

형식:DWORD

pvData 매개 변수가 가리키는 데이터의 크기(바이트)입니다. 데이터가 REG_SZ, REG_EXPAND_SZ 또는 REG_MULTI_SZ 형식인 경우 cbData 는 종료되는 null 문자 또는 문자의 크기를 포함해야 합니다.

[in] dwFlags

형식:DWORD

데이터를 작성해야 하는 하위 트리를 나타내는 플래그입니다. 다음 값 중 하나 이상:

SHREGSET_HKCU(0x00000001)

pszValue에 지정된 이름의 값이 현재 지정된 하위 키 아래에 없는 경우에만 HKEY_CURRENT_USER 씁니다.

SHREGSET_FORCE_HKCU(0x00000002)

HKEY_CURRENT_USER 씁니다. pszValue에 지정된 이름의 값이 이미 있는 경우 덮어씁니다.

SHREGSET_HKLM(0x00000004)

pszValue에 지정된 이름의 값이 현재 지정된 하위 키 아래에 없는 경우에만 HKEY_LOCAL_MACHINE 씁니다.

SHREGSET_FORCE_HKLM(0x00000008)

HKEY_LOCAL_MACHINE 씁니다. pszValue에 지정된 이름의 값이 이미 있는 경우 덮어씁니다.

SHREGSET_DEFAULT(0x00000006)

(SHREGSET_FORCE_HKCU SHREGSET_HKLM | )에 해당합니다.

반환 값

형식: LSTATUS

성공하면 ERROR_SUCCESS 반환합니다. 그렇지 않으면 Winerror.h에 정의된 0이 아닌 오류 코드입니다. FormatMessage 함수를 FORMAT_MESSAGE_FROM_SYSTEM 플래그와 함께 사용하여 오류에 대한 일반 설명을 검색할 수 있습니다.

설명

SHRegWriteUSValue를 사용하려면 먼저 SHRegOpenUSKey를 사용하여 키를 열어야 합니다. 키가 열리면 필요한 횟수만큼 SHRegWriteUSValue 를 사용할 수 있습니다.

단일 값만 작성해야 하는 경우 키를 열고 값을 쓰는 SHRegSetUSValue를 사용해야 합니다.

동일한 키에 둘 이상의 값을 작성해야 하는 경우 키가 한 번만 열리기 때문에 SHRegWriteUSValue 에 대한 여러 호출이 일반적으로 SHRegSetUSValue보다 더 효율적입니다.

참고

shlwapi.h 헤더는 UNICODE 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 SHRegWriteUSValue를 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional, Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 shlwapi.h
라이브러리 Shlwapi.lib
DLL Shlwapi.dll(버전 4.71 이상)

추가 정보

레지스트리 값 형식