IShellIconOverlay::GetOverlayIndex 메서드(shlobj_core.h)
시스템 이미지 목록에서 오버레이 인덱스 를 가져옵니다.
구문
HRESULT GetOverlayIndex(
[in] PCUITEMID_CHILD pidl,
[in, out] int *pIndex
);
매개 변수
[in] pidl
형식: PCUITEMID_CHILD
아이콘이 표시되는 개체를 식별하는 ITEMIDLIST 구조체에 대한 포인터입니다.
[in, out] pIndex
형식: int*
시스템 이미지 목록에서 오버레이 인덱스(1 기반)를 나타내는 값에 대한 포인터입니다. 이 인덱스는 ImageList::SetOverlayImage 함수를 사용하여 개인 이미지 목록에 오버레이 이미지를 추가할 때 지정되는 iOverlay 값과 동일합니다.
반환 값
형식: HRESULT
이 메서드는 이러한 값 중 하나를 반환할 수 있습니다.
반환 코드 | Description |
---|---|
|
오버레이의 인덱스가 발견되었습니다. |
|
이 파일에 대한 오버레이가 없습니다. |
|
PIDL이 잘못되었습니다. |
|
예를 들어 pIndex 가 NULL인 경우 인수가 잘못되었습니다. |
|
호출 애플리케이션이 OI_ASYNC 전달하여 오버레이 인덱스 계산 작업에 다소 시간이 소요됨을 나타냅니다. |
설명
시스템 이미지 목록에서 오버레이 인덱스를 검색하려면 SHGetIconOverlayIndex를 호출합니다.
이 메서드를 호출할 때 pIndex 가 OI_ASYNC 가리키도록 설정하면 셸 아이콘 오버레이 처리기가 pIndex에 오버레이 인덱스를 저장하는 대신 E_PENDING 반환할 수 있습니다. 이 반환 값은 오버레이 컴퓨팅이 느린 작업이며 백그라운드에서 처리되어야 했음을 나타냅니다. IShellIconOverlay 구현이 E_PENDING 반환하면 OI_ASYNC 플래그 없이 백그라운드 작업자 스레드에서 다시 호출됩니다. GetOverlayIndex를 호출할 때 OI_ASYNC 사용하지 않는 경우 오버레이 처리기는 반환하기 전에 오버레이 인덱스를 계산하고 pIndex에 값을 저장해야 합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional, Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | shlobj_core.h |
DLL | Shell32.dll(버전 5.0 이상) |