Функция 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 или более поздняя) |