다음을 통해 공유


GetUserPreferredUILanguages 함수(winnls.h)

표시 언어 설정에 대한 정보를 검색합니다. 자세한 내용은 사용자 인터페이스 언어 관리를 참조하세요.

구문

BOOL GetUserPreferredUILanguages(
  [in]            DWORD   dwFlags,
  [out]           PULONG  pulNumLanguages,
  [out, optional] PZZWSTR pwszLanguagesBuffer,
  [in, out]       PULONG  pcchLanguagesBuffer
);

매개 변수

[in] dwFlags

언어 형식 및 필터링을 식별하는 플래그입니다. 다음 플래그는 표시 언어 목록에 사용할 언어 형식을 지정합니다. 플래그는 상호 배타적이고 기본값은 MUI_LANGUAGE_NAME.

의미
MUI_LANGUAGE_ID 언어 식별자에서 언어 문자열 검색
MUI_LANGUAGE_NAME 언어 이름 형식으로 언어 문자열을 검색합니다.

[out] pulNumLanguages

pwszLanguagesBuffer에서 검색된 언어 수에 대한 포인터입니다.

[out, optional] pwszLanguagesBuffer

선택 사항입니다. 이 함수가 dwflags로 지정된 형식으로 정렬된 null로 구분된 표시 언어 목록을 검색하는 버퍼에 대한 포인터입니다. 이 목록은 두 개의 null 문자로 끝납니다.

또는 이 매개 변수가 NULL 로 설정되고 pcchLanguagesBuffer 가 0으로 설정된 경우 함수는 pcchLanguagesBuffer에서 필요한 언어 버퍼 크기를 검색합니다. 필요한 크기에는 두 개의 null 문자가 포함됩니다.

[in, out] pcchLanguagesBuffer

pwszLanguagesBuffer로 표시된 언어 버퍼의 크기(문자)에 대한 포인터입니다. 함수에서 성공적으로 반환되면 매개 변수에 검색된 언어 버퍼의 크기가 포함됩니다.

또는 이 매개 변수가 0으로 설정되고 pwszLanguagesBufferNULL로 설정된 경우 함수는 pcchLanguagesBuffer에서 필요한 언어 버퍼 크기를 검색합니다.

반환 값

성공하면 TRUE를 반환하고 그렇지 않으면 FALSE를 반환합니다. 확장된 오류 정보를 가져오기 위해 애플리케이션은 GetLastError 함수를 호출할 수 있습니다. 이 함수는 다음 오류 코드 중 하나를 반환할 수 있습니다.

  • ERROR_INSUFFICIENT_BUFFER. 제공된 버퍼 크기가 충분히 크지 않거나 NULL로 잘못 설정되었습니다.

다른 이유로 인해 함수가 실패하면 pulNumLanguagespcchLanguagesBuffer 값이 정의되지 않습니다.

설명

MUI_LANGUAGE_ID 지정하면 검색된 언어 문자열은 선행 0x를 포함하지 않고 길이가 4자인 16진수 언어 식별자가 됩니다. 예를 들어 en-US는 "0409"로, en은 "0009"로 반환됩니다.

표시 언어는 추가 로캘에 해당하는 둘 이상의 LIP(언어 인터페이스 팩) 언어를 포함할 수 없습니다. 목록에 이러한 언어가 둘 이상 포함되어 있고 애플리케이션이 함수 호출에서 MUI_LANGUAGE_ID 지정하는 경우 언어 버퍼에는 해당 언어에 대한 "1400"이 포함됩니다. 이 문자열은 LOCALE_CUSTOM_UI_DEFAULT 16진수 값에 해당합니다.

이 함수에서 검색한 언어 목록에는 다음과 같은 특성이 있습니다.

  • 각 언어는 유효한 NLS 로캘을 나타냅니다.
  • 각 언어는 운영 체제에 설치됩니다.
  • 목록에는 중복 항목이 없는 각 언어에 대해 하나의 항목이 포함됩니다.
  • 목록이 비어 있거나 이러한 유효성 검사 조건을 충족하지 않는 경우 시스템 기본 설정 UI 언어 목록이 대신 사용됩니다.

C# 서명

[DllImport("Kernel32.dll", CharSet = CharSet.Auto)]
        static extern System.Boolean GetUserPreferredUILanguages(
            System.UInt32 dwFlags,
            ref System.UInt32 pulNumLanguages,
            System.IntPtr pwszLanguagesBuffer,
            ref System.UInt32 pcchLanguagesBuffer
            );

요구 사항

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

참고 항목

GetSystemPreferredUILanguages 함수, GetThreadPreferredUILanguages 함수, GetThreadUILanguage 함수, SetThreadPreferredUILanguages 함수, 다국어 사용자 인터페이스, 다국어 사용자 인터페이스 함수