EnumResourceNamesExA 함수(libloaderapi.h)
지정된 이진 모듈과 연결된 지정된 형식의 리소스를 열거합니다. 검색에는 LN 파일과 연결된 .mui 파일이 모두 포함되거나 여러 가지 방법으로 제한될 수 있습니다.
통사론
BOOL EnumResourceNamesExA(
[in, optional] HMODULE hModule,
LPCSTR lpType,
[in] ENUMRESNAMEPROCA lpEnumFunc,
[in] LONG_PTR lParam,
[in] DWORD dwFlags,
[in] LANGID LangId
);
매개 변수
[in, optional] hModule
형식: HMODULE
검색할 모듈에 대한 핸들입니다. 일반적으로 LN 파일이며 플래그 RESOURCE_ENUM_MUI 설정된 경우 적절한 .mui 파일이 검색에 포함됩니다. 또는 .mui 파일 또는 다른 LN 파일에 대한 핸들일 수 있습니다.
이 매개 변수가 NULL
lpType
형식: LPCSTR
이름이 열거되는 리소스의 형식입니다. 또는 포인터 대신 이 매개 변수는 MAKEINTRESOURCE(ID)를
[in] lpEnumFunc
형식: ENUMRESNAMEPROC
열거된 각 리소스 이름에 대해 호출할 콜백 함수에 대한 포인터입니다. 자세한 내용은 EnumResNameProc참조하세요.
[in] lParam
형식: LONG_PTR
콜백 함수에 전달되는 애플리케이션 정의 값입니다. 이 매개 변수는 오류 검사에 사용할 수 있습니다.
[in] dwFlags
형식: DWORD
검색할 파일의 형식입니다. 다음 값이 지원됩니다. dwFlags 0이면 RESOURCE_ENUM_LN 및 RESOURCE_ENUM_MUI 플래그가 지정된 것으로 간주됩니다.
값 | 의미 |
---|---|
|
일반적인 리소스 로더 전략에 따라 hModule 지정된 LN 파일 및 현재 언어 기본 설정과 연결된 .mui 파일에서 리소스를 검색합니다(사용자 인터페이스 언어 관리참조). 또는 LangId 0이 아니면 지정된 .mui 파일만 검색됩니다. 일반적으로 이 플래그는 hModule LN 파일을 참조하는 경우에만 사용해야 합니다. hModule .mui 파일을 참조하는 경우 플래그 이름에도 불구하고 해당 파일은 실제로 RESOURCE_ENUM_LN 플래그로 처리됩니다. |
|
파일이 LN 파일인지, 다른 형식의 LN 파일인지, .mui 파일인지에 관계없이 hModule지정된 파일을 검색합니다. |
|
리소스의 형식이 올바르게 지정되었는지 확인하기 위해 열거형을 수행하는 동안 PE 헤더에서 리소스 섹션 및 해당 참조에 대한 추가 유효성 검사를 수행합니다. 유효성 검사는 열거되는 각 이름에 대해 최대 260자 제한을 설정합니다. |
[in] LangId
형식: LANGID
MUI 모듈에서 검색을 필터링하는 데 사용되는 지역화 언어입니다. 이 매개 변수는 RESOURCE_ENUM_MUI 플래그가 dwFlags설정된 경우에만 사용됩니다. 0을 지정하면 일반적인 리소스 로더 전략(사용자 인터페이스 언어 관리참조)에 따라 현재 언어 기본 설정과 일치하는 모든 .mui 파일이 검색에 포함됩니다. 0이 아닌 LangId 지정한 경우 검색된 유일한 .mui 파일은 지정된 LangId일치하는 파일입니다.
반환 값
형식: BOOL
함수가 성공하면 TRUE
발언
리소스 유형의 정수 식별자입니다. 예를 들어 문자열 "#258"은 식별자 258을 나타냅니다.
열거형 검색에는 LN 파일과 연결된 .mui 파일이 모두 포함될 수 있습니다. 모든 형식의 단일 이진 모듈로 제한할 수 있습니다. 단일 LN 파일과 연결된 .mui 파일로 제한할 수도 있습니다. hModule 매개 변수에 대한 LN 파일과 0이 아닌 LangId 매개 변수를 지정하면 검색을 해당 LN 파일 및 언어와 연결된 고유한 .mui 파일로 제한할 수 있습니다.
찾은 각 리소스에 대해 EnumResourceNamesEx 애플리케이션 정의 콜백 함수 lpEnumFunc호출하여 찾은 각 리소스의 이름 또는 ID뿐만 아니라 EnumResourceNamesEx전달된 다양한 다른 매개 변수를 전달합니다.
리소스에 ID가 있으면 ID가 콜백 함수로 반환됩니다. 그렇지 않으면 리소스 이름이 콜백 함수로 반환됩니다. 자세한 내용은 EnumResNameProc참조하세요.
EnumResourceNamesEx 함수는 콜백 함수가 FALSE 반환하거나 이 형식의 모든 리소스 이름이 열거될 때까지 리소스 이름을 계속 열거합니다.
hModule LN 파일을 지정하고 두 플래그를 모두 선택한 경우 열거된 이름은 해당 LN 파일 또는 연결된 .mui 파일에 있는 리소스에 해당합니다. .mui 파일을 찾을 수 없는 경우 LN 파일의 이름만 반환됩니다. 하나의 적절한 .mui 파일이 발견되면 단일 LN 파일에 해당하는 모든 .mui 파일의 리소스 이름이 같기 때문에 검색이 더 이상 진행되지 않습니다.
dwFlags 및 LangId 모두 0이면 함수는 EnumResourceNames같이 동작합니다.
LangId 0이 아니면 해당 언어 식별자에 해당하는 .mui 파일만 검색됩니다. 언어 대체는 사용되지 않습니다. 해당 언어에 대한 .mui 파일이 없으면 열거형이 비어 있습니다(해당 언어에 대한 리소스가 LN 파일에 있고 플래그가 LN 파일을 검색하도록 설정되지 않은 경우).
열거형에는 중복 항목이 포함되지 않습니다. 특정 언어의 리소스가 LN 파일과 .mui 파일 모두에 포함된 경우 이름은 한 번만 열거됩니다.
예제
예제는 리소스 목록 만들기참조하세요.
메모
libloaderapi.h 헤더는 ENumResourceNamesEx를 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입대한
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | libloaderapi.h(Windows.h 포함) |
라이브러리 | Kernel32.lib |
DLL | Kernel32.dll |
참고 항목
개념
참조