Поделиться через


Функция SHHandleUpdateImage (shlobj_core.h)

[SHHandleUpdateImage доступен для использования в операционных системах, указанных в разделе Требования. Он может быть изменен или недоступен в последующих версиях.]

Обрабатывает уведомление об изменении оболочки SHCNE_UPDATEIMAGE .

Синтаксис

int SHHandleUpdateImage(
  [in] PCIDLIST_ABSOLUTE pidlExtra
);

Параметры

[in] pidlExtra

Тип: PCIDLIST_ABSOLUTE

Индекс в списке системных образов, который был изменен, указанный в параметре pidl2объекта IShellChangeNotify::OnChange.

Возвращаемое значение

Тип: int

Возвращает значение -1 при сбое или индекс записи измененного списка изображений при успешном выполнении.

Комментарии

Используйте SHHandleUpdateImage , только если параметр pidl2 , полученный обратным вызовом уведомления об изменениях, не равен NULL.

Примеры

В следующем примере показано использование SHHandleUpdateImage в реализации IShellChangeNotify::OnChange.

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
Header shlobj_core.h (включая Shlobj.h)
Библиотека Shell32.lib
DLL Shell32.dll (версия 5.0 или более поздняя)

См. также раздел

IShellChangeNotify

SHChangeNotify