Функция SHGetItemFromDataObject (shobjidl_core.h)
Создает IShellItem или связанный объект на основе элемента, указанного iDataObject.
Синтаксис
HRESULT SHGetItemFromDataObject(
[in] IDataObject *pdtobj,
[in] DATAOBJ_GET_ITEM_FLAGS dwFlags,
[in] REFIID riid,
[out] void **ppv
);
Параметры
[in] pdtobj
Тип: IDataObject*
Указатель на исходный экземпляр IDataObject .
[in] dwFlags
Одно или несколько значений из перечисления DATAOBJ_GET_ITEM_FLAGS для указания параметров для целевого объекта. Может иметь значение 0.
[in] riid
Тип: REFIID
Ссылка на IID интерфейса, извлекаемого через ppv, обычно IID_IShellItem.
[out] ppv
Тип: void**
При возврате этим методом содержит указатель интерфейса, запрошенный в riid. Обычно это IShellItem.
Возвращаемое значение
Тип: HRESULT
Если эта функция выполняется успешно, она возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
Рекомендуется использовать макрос IID_PPV_ARGS , определенный в Objbase.h, для упаковки параметров riid и ppv . Этот макрос предоставляет правильный КОД на основе интерфейса, на который указывает значение в ppv, что исключает возможность ошибки кода.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 7 [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 R2 [только классические приложения] |
Целевая платформа | Windows |
Header | shobjidl_core.h (включая Shobjidl.h) |
DLL | Shell32.dll (версия 6.1 или более поздняя) |