Share via


EnumResourceLanguagesExW 함수(libloaderapi.h)

지정된 이진 모듈과 연결된 지정된 형식 및 이름의 언어별 리소스를 열거합니다. 열거형에 대한 제어를 더 많이 허용하여 EnumResourceLanguages 를 확장합니다.

구문

BOOL EnumResourceLanguagesExW(
  [in] HMODULE          hModule,
  [in] LPCWSTR          lpType,
  [in] LPCWSTR          lpName,
  [in] ENUMRESLANGPROCW lpEnumFunc,
  [in] LONG_PTR         lParam,
  [in] DWORD            dwFlags,
  [in] LANGID           LangId
);

매개 변수

[in] hModule

형식: HMODULE

검색할 모듈에 대한 핸들입니다. 일반적으로 이 파일은 언어 중립적인 LN 파일( 이식 가능한 실행 파일 )이며 플래그 RESOURCE_ENUM_MUI 설정된 경우 적절한 .mui 파일이 검색에 포함됩니다. 또는 .mui 파일 또는 다른 LN 파일에 대한 핸들일 수 있습니다. 특정 .mui 파일인 경우 해당 파일만 리소스를 검색합니다.

이 매개 변수가 NULL인 경우 현재 프로세스를 만드는 데 사용되는 모듈에 핸들을 전달하는 것과 같습니다.

[in] lpType

형식: LPCTSTR

언어가 열거되는 리소스의 형식입니다. 또는 포인터 대신 이 매개 변수는 MAKEINTRESOURCE(ID)일 수 있습니다. 여기서 ID는 미리 정의된 리소스 종류를 나타내는 정수 값입니다. 미리 정의된 리소스 종류 목록은 리소스 종류를 참조하세요. 자세한 내용은

자세한 내용은 아래의 설명 섹션을 참조하세요.

[in] lpName

형식: LPCTSTR

언어가 열거되는 리소스의 이름입니다. 또는 포인터 대신 이 매개 변수는 MAKEINTRESOURCE(ID)일 수 있습니다. 여기서 ID는 리소스의 정수 식별자입니다. 자세한 내용은 아래의 설명 섹션을 참조하세요.

[in] lpEnumFunc

형식: ENUMRESLANGPROC

열거된 각 리소스 언어에 대해 호출할 콜백 함수에 대한 포인터입니다. 자세한 내용은 EnumResLangProcW를 참조하세요.

[in] lParam

형식: LONG_PTR

콜백 함수에 전달되는 애플리케이션 정의 값입니다. 이 매개 변수는 오류 검사에 사용할 수 있습니다.

[in] dwFlags

형식:DWORD

검색할 파일의 형식입니다. 지원되는 값은 다음과 같습니다. dwFlags가 0이면 RESOURCE_ENUM_LNRESOURCE_ENUM_MUI 플래그가 지정된 것으로 간주됩니다.

의미
RESOURCE_ENUM_MUI
0x0002
hModule에 지정된 LN 파일과 연결된 .mui 파일에서 언어별 리소스를 검색합니다. 또는 LangId 가 0이 아닌 경우 검색된 유일한 .mui 파일은 지정된 LangId와 일치하는 파일입니다. 일반적으로 이 플래그는 hModule 이 LN 파일을 참조하는 경우에만 사용해야 합니다. hModule이 .mui 파일을 참조하는 경우 플래그 이름에도 불구하고 해당 파일은 실제로 RESOURCE_LN 플래그로 처리됩니다. 검색 순서는 아래의 설명 섹션을 참조하세요.
RESOURCE_ENUM_LN
0x0001
파일이 LN 파일인지, 다른 형식의 LN 파일인지, .mui 파일인지에 관계없이 hModule로 지정된 파일을 검색합니다.
RESOURCE_ENUM_MUI_SYSTEM
0x0004
.mui 파일 검색을 시스템 설치 MUI 언어로 제한합니다.
RESOURCE_ENUM_VALIDATE
0x0008
리소스의 형식이 올바르게 지정되었는지 확인하기 위해 열거형을 수행하는 동안 PE 헤더에서 리소스 섹션 및 해당 참조에 대한 추가 유효성 검사를 수행합니다.

[in] LangId

형식: LANGID

.mui 파일에서 검색을 필터링하는 데 사용되는 지역화 언어입니다. 이 매개 변수는 RESOURCE_ENUM_MUI 플래그가 dwFlags에 설정된 경우에만 사용됩니다. 0을 지정하면 모든 .mui 파일이 검색에 포함됩니다. 0이 아닌 LangId 가 지정된 경우 검색된 유일한 .mui 파일은 지정된 LangId와 일치하는 파일입니다.

반환 값

형식: BOOL

함수가 성공하면 TRUE 를 반환하고, 함수가 지정된 형식의 리소스를 찾지 못하거나 다른 이유로 함수가 실패하는 경우 FALSE 를 반환합니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.

설명

IS_INTRESOURCE(lpType)이 TRUE이면 lpType은 지정된 리소스 유형의 정수 식별자를 지정합니다. 그렇지 않으면 null로 끝나는 문자열에 대한 포인터입니다. 문자열의 첫 번째 문자가 파운드 기호(#)인 경우 나머지 문자는 를 지정하는 10진수를 나타냅니다.

리소스 유형의 정수 식별자입니다. 예를 들어 문자열 "#258"은 식별자 258을 나타냅니다.

마찬가지로 IS_INTRESOURCE(lpName)이 TRUE이면 lpName 은 지정된 리소스의 정수 식별자를 지정합니다. 그렇지 않으면 null로 끝나는 문자열에 대한 포인터입니다. 문자열의 첫 번째 문자가 파운드 기호(#)인 경우 나머지 문자는 를 지정하는 10진수를 나타냅니다.

리소스의 정수 식별자입니다.

Windows Vista부터 이진 모듈은 일반적으로 LN 파일이며, 열거형에는 지역화 가능한 언어 리소스를 포함하는 해당 언어별 리소스 파일(.mui 파일)의 리소스도 포함됩니다.

발견된 각 리소스에 대해 EnumResourceLanguagesEx 는 애플리케이션 정의 콜백 함수 lpEnumFunc를 호출하여 리소스가 발견된 언어의 언어 식별자( 언어 식별자 참조)와 EnumResourceLanguagesEx에 전달된 다양한 다른 매개 변수를 콜백 함수에 전달합니다.

검색에는 LN 파일과 연결된 .mui 파일이 모두 포함되거나 모든 형식의 단일 이진 모듈 또는 단일 LN 파일과 연결된 .mui 파일로 제한될 수 있습니다. 또한 hModule 매개 변수에 대한 LN 파일과 0이 아닌 LangId 매개 변수를 지정하면 해당 LN 파일 및 언어와 연결된 고유한 .mui 파일로 검색을 제한할 수 있습니다.

EnumResourceLanguagesEx 함수는 콜백 함수가 FALSE를 반환하거나 모든 리소스 언어가 열거될 때까지 리소스 언어를 계속 열거합니다.

hModule이 LN 파일을 지정하고 두 플래그가 모두 선택된 경우 열거된 언어에는 리소스가 LN 파일 또는 연결된 모든 .mui 파일에 있는 모든 언어가 포함됩니다. .mui 파일이 없으면 LN 파일의 언어만 반환됩니다.

dwFlagsRESOURCE_ENUM_MUI 또는 NULL이 포함되어 있고 LangId가 0이면 열거형은 먼저 EnumUILanguages에서 검색된 언어를 사용하여 시스템에 설치된 모든 .mui 파일과 연결된 언어를 포함합니다. 마지막으로 RESOURCE_ENUM_LN 플래그도 설정되면 hModule 로 지정된 파일도 검색됩니다.

LangId가 0이 아닌 경우 해당 언어 식별자에 해당하는 .mui 파일만 검색됩니다. 언어 대체는 사용되지 않습니다. 해당 언어에 대한 .mui 파일이 없으면 열거형이 비어 있습니다(해당 언어에 대한 리소스가 LN 파일에 있고 플래그가 LN 파일을 검색하도록 설정되지 않는 한).

열거형에는 중복 항목이 포함되지 않습니다. 특정 언어에 대한 리소스가 LN 파일과 .mui 파일 모두에 포함된 경우 형식은 한 번만 열거됩니다.

예제

예제는 리소스 목록 만들기를 참조하세요.

참고

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

요구 사항

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

추가 정보

개념

EnumResLangProcW

EnumResourceNamesEx

EnumResourceTypesEx

MAKEINTRESOURCE

참조

리소스