共用方式為


SHHandleUpdateImage 函式 (shlobj_core.h)

[SHHandleUpdateImage 可用於需求一節中指定的操作系統。 它可能會在後續版本中改變或無法使用。]

處理 SHCNE_UPDATEIMAGE 殼層變更通知。

語法

int SHHandleUpdateImage(
  [in] PCIDLIST_ABSOLUTE pidlExtra
);

參數

[in] pidlExtra

類型: PCIDLIST_ABSOLUTE

系統映射清單中的索引已變更,在 IShellChangeNotify::OnChangepidl2 參數中指定。

傳回值

類型: int

在失敗時傳回 -1,或在成功時傳回已變更影像清單專案的索引。

備註

只有在變更通知回呼收到的 pidl2 參數不是 NULL 時,才使用 SHHandleUpdateImage

範例

下列範例示範如何在 IShellChangeNotify::OnChange 實作中使用 SHHandleUpdateImage

STDMETHODIMP CMyShellChangeNotify::OnChange(LONG lEvent, 
                                            LPCITEMIDLIST pidl1, 
                                            LPCITEMIDLIST pidl2)
{
    HRESULT hr = E_FAIL;
    int iImage;

    switch(lEvent)
    {
        // An image in the system image list has changed.
        case SHCNE_UPDATEIMAGE:
        {
            hr = S_OK;

            if (pidl2)
                iImage = SHHandleUpdateImage(pidl2);
            else
                iImage = *(int UNALIGNED *)((BYTE *)pidl1 + 2);
               
            if (iImage != -1)
            {
                // Process iImage as desired.
            }
            break;
        }
        // Other cases
    }
    return hr;
}

規格需求

需求
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 shlobj_core.h (包含 Shlobj.h)
程式庫 Shell32.lib
Dll Shell32.dll (5.0 版或更新版本)

另請參閱

IShellChangeNotify

SHChangeNotify