다음을 통해 공유


SetLocaleInfoA 함수(winnls.h)

현재 로캘의 사용자 재정의 부분에 있는 정보 항목을 설정합니다. 이 함수는 시스템 기본값을 설정하지 않습니다.

주의 이 함수는 모든 애플리케이션에 대한 값을 수정하므로 제어판 지역 및 언어 옵션 기능 또는 유사한 유틸리티에서만 호출해야 합니다. 시스템 매개 변수를 국제적으로 변경하는 경우 호출 애플리케이션은 다른 애플리케이션에서 불안정을 일으키지 않도록 WM_SETTINGCHANGE 메시지를 브로드캐스트해야 합니다.
 

구문

BOOL SetLocaleInfoA(
  [in] LCID   Locale,
  [in] LCTYPE LCType,
  [in] LPCSTR lpLCData
);

매개 변수

[in] Locale

함수의 ANSI 버전의 경우 lpLCData 정보를 해석할 때 사용되는 코드 페이지가 있는 로캘의 로캘 식별자입니다. 유니코드 버전의 경우 이 매개 변수는 무시됩니다.

MAKELCID 매크로를 사용하여 로캘 식별자를 만들거나 다음 미리 정의된 값 중 하나를 사용할 수 있습니다.

다음 사용자 지정 로캘 식별자도 지원됩니다.

[in] LCType

설정할 로캘 정보의 유형입니다. 유효한 상수는 로캘 정보 상수의 "GetLocaleInfo, GetLocaleInfoEx 및 SetLocaleInfo의 LCType 매개 변수에 사용된 상수" 섹션을 참조하세요. 애플리케이션은 호출당 하나의 값만 지정할 수 있지만 이진 OR 연산자를 사용하여 LOCALE_USE_CP_ACP 다른 상수와 결합할 수 있습니다.

[in] lpLCData

설정할 로캘 정보를 포함하는 null로 끝나는 문자열에 대한 포인터입니다. 정보는 지정된 상수와 관련된 형식이어야 합니다. 애플리케이션은 함수의 유니코드 버전에 유니코드 문자열을 사용하고 ANSI 버전에 ANSI 문자열을 사용합니다.

반환 값

성공하면 0이 아닌 값을 반환하고, 그렇지 않으면 0을 반환합니다. 확장 오류 정보를 가져오기 위해 애플리케이션은 GetLastError를 호출할 수 있으며, 다음 오류 코드 중 하나를 반환할 수 있습니다.

  • ERROR_ACCESS_DISABLED_BY_POLICY. 컴퓨터 또는 사용자의 그룹 정책은 이 작업을 금지했습니다.
  • ERROR_INVALID_ACCESS. 액세스 코드가 잘못되었습니다.
  • ERROR_INVALID_FLAGS. 플래그에 제공된 값이 잘못되었습니다.
  • ERROR_INVALID_PARAMETER. 매개 변수 값이 잘못되었습니다.

설명

이 함수는 레지스트리에 씁니다. 여기서는 특정 애플리케이션 대신 특정 사용자와 연결된 값을 설정합니다. 이러한 레지스트리 값은 사용자가 실행하는 다른 애플리케이션의 동작에 영향을 줍니다. 일반적으로 애플리케이션은 사용자가 변경 내용을 명시적으로 요청한 경우에만 이 함수를 호출해야 합니다. 레지스트리 설정은 단일 애플리케이션의 편의를 위해 변경해서는 안 됩니다.

LCType 매개 변수의 경우 애플리케이션은 문자열 번역을 위해 로캘 코드 페이지 대신 운영 체제 ANSI 코드 페이지를 사용하도록 LOCALE_USE_CP_ACP 설정해야 합니다.

이 함수의 ANSI 버전을 유니코드 전용 로캘 식별자와 함께 사용하면 운영 체제에서 시스템 코드 페이지를 사용하기 때문에 함수가 성공할 수 있습니다. 그러나 시스템 코드 페이지에서 정의되지 않은 문자는 문자열에 물음표(?)로 표시됩니다.

Windows Vista를 기준으로 LOCALE_SDATELOCALE_STIME 상수는 사용되지 않습니다. 이러한 상수를 사용하지 마세요. 대신 LOCALE_SSHORTDATE 사용하여 LOCALE_STIMEFORMAT . 사용자 지정 로캘에 날짜 또는 시간 형식 내에 균일한 단일 구분 기호 문자가 없을 수 있습니다. 예를 들어 "12/31, 2006" 또는 "03:56'23"과 같은 형식이 유효할 수 있습니다.

참고

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

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 winnls.h(Windows.h 포함)
라이브러리 Kernel32.lib
DLL Kernel32.dll

참고 항목

GetLocaleInfo

국가 언어 지원

국가 언어 지원 기능