IShellIconOverlay::GetOverlayIndex 方法 (shlobj_core.h)
取得系統映像清單中的重疊索引。
語法
HRESULT GetOverlayIndex(
[in] PCUITEMID_CHILD pidl,
[in, out] int *pIndex
);
參數
[in] pidl
類型: PCUITEMID_CHILD
ITEMIDLIST 結構的指標,識別其圖示正在顯示的物件。
[in, out] pIndex
類型: int*
值的指標,指出重疊索引 (系統映像清單中的一個基底) 。 此索引相當於當您使用 ImageList::SetOverlayImage 函式將重疊影像新增至私人影像清單時所指定的 iOverlay 值。
傳回值
類型: HRESULT
這個方法可以傳回下列其中一個值。
傳回碼 | 描述 |
---|---|
|
找到重疊的索引。 |
|
此檔案沒有重疊。 |
|
PIDL 無效。 |
|
例如,如果 pIndex 為 NULL,則自變數無效。 |
|
傳遞OI_ASYNC呼叫的應用程式表示計算重疊索引的作業需要一些時間。 |
備註
若要擷取系統映射清單中的重疊索引,請呼叫 SHGetIconOverlayIndex。
如果您在呼叫此方法時將 pIndex 設定為指向 OI_ASYNC,殼層圖示重疊處理程式可能會傳回E_PENDING,而不是將重疊索引儲存在 pIndex 中。 這個傳回值表示計算重疊是緩慢的作業,而且應該在背景中處理。 當 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 版或更新版本) |