EnumResourceNamesW 함수(libloaderapi.h)
이진 모듈 내에서 지정된 형식의 리소스를 열거합니다. Windows Vista 이상에서는 일반적으로 언어 중립적 LN 파일( 이식 가능한 실행 파일 )이며, 열거형에는 지역화 가능한 언어 리소스가 포함된 해당 언어별 리소스 파일(.mui 파일)의 리소스도 포함됩니다. hModule에서 .mui 파일을 지정할 수도 있습니다. 이 경우 해당 파일만 리소스를 검색합니다.
구문
BOOL EnumResourceNamesW(
[in, optional] HMODULE hModule,
[in] LPCWSTR lpType,
[in] ENUMRESNAMEPROCW lpEnumFunc,
[in] LONG_PTR lParam
);
매개 변수
[in, optional] hModule
형식: HMODULE
검색할 모듈에 대한 핸들입니다. Windows Vista부터 LN 파일인 경우 적절한 .mui 파일(있는 경우)이 검색에 포함됩니다.
이 매개 변수가 NULL인 경우 현재 프로세스를 만드는 데 사용되는 모듈에 핸들을 전달하는 것과 같습니다.
[in] lpType
형식: LPCTSTR
이름이 열거되는 리소스의 형식입니다. 또는 포인터 대신 이 매개 변수는 MAKEINTRESOURCE(ID)일 수 있습니다. 여기서 ID는 미리 정의된 리소스 형식을 나타내는 정수 값입니다. 미리 정의된 리소스 종류 목록은 리소스 종류를 참조하세요. 자세한 내용은 아래 설명 섹션을 참조하세요.
[in] lpEnumFunc
형식: ENUMRESNAMEPROC
열거된 각 리소스 이름 또는 ID에 대해 호출할 콜백 함수에 대한 포인터입니다. 자세한 내용은 ENUMRESNAMEPROC를 참조하세요.
[in] lParam
형식: LONG_PTR
콜백 함수에 전달되는 애플리케이션 정의 값입니다. 이 매개 변수는 오류 검사에 사용할 수 있습니다.
반환 값
형식: BOOL
함수가 성공하면 반환 값은 TRUE 이고, 함수가 지정된 형식의 리소스를 찾지 못하거나 다른 이유로 인해 함수가 실패하는 경우 FALSE 입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.
설명
IS_INTRESOURCE(lpszType)이 TRUE이면 lpszType은 지정된 리소스 유형의 정수 식별자를 지정합니다. 그렇지 않으면 null로 끝나는 문자열에 대한 포인터입니다. 문자열의 첫 번째 문자가 파운드 기호(#)인 경우 나머지 문자는 리소스 형식의 정수 식별자를 지정하는 10진수를 나타냅니다. 예를 들어 문자열 "#258"은 식별자 258을 나타냅니다.
찾은 각 리소스에 대해 EnumResourceNames 는 애플리케이션 정의 콜백 함수 lpEnumFunc를 호출하여 찾은 각 리소스의 이름 또는 ID와 EnumResourceNames에 전달된 다양한 다른 매개 변수를 전달합니다.
또는 애플리케이션에서 열거되는 리소스를 보다 정확하게 제어할 수 있는 EnumResourceNamesEx를 호출할 수 있습니다.
리소스에 ID가 있는 경우 ID는 콜백 함수로 전달됩니다. 그렇지 않으면 리소스 이름이 콜백 함수에 전달됩니다. 자세한 내용은 ENUMRESNAMEPROC를 참조하세요.
EnumResourceNames 함수는 콜백 함수가 FALSE를 반환하거나 모든 리소스가 열거될 때까지 리소스를 계속 열거합니다.
Windows Vista부터 hModule 이 LN 파일을 지정하는 경우 열거된 리소스는 LN 파일 또는 연결된 .mui 파일에 있을 수 있습니다. .mui 파일이 없으면 LN 파일의 리소스만 반환됩니다. .mui 파일을 검색하는 순서는 일반적인 리소스 로더 검색 순서입니다. 자세한 내용은 사용자 인터페이스 언어 관리를 참조하세요. 적절한 .mui 파일이 하나 있으면 .mui 파일 검색이 중지됩니다. 단일 LN 파일에 해당하는 모든 .mui 파일에는 동일한 리소스 종류가 있으므로 찾은 .mui 파일의 리소스만 열거해야 합니다.
열거형에는 중복 항목이 포함되지 않습니다. 이름이 같은 리소스가 LN 파일과 .mui 파일에 모두 포함된 경우 리소스는 한 번만 열거됩니다.
예제
예제는 리소스 목록 만들기를 참조하세요.
요구 사항
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | libloaderapi.h(Windows.h 포함) |
라이브러리 | Kernel32.lib |
DLL | Kernel32.dll |