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


Метод IShellItem::BindToHandler (shobjidl_core.h)

Привязывается к обработчику для элемента в соответствии со значением идентификатора обработчика (BHID).

Синтаксис

HRESULT BindToHandler(
  IBindCtx *pbc,
  REFGUID  bhid,
  REFIID   riid,
  void     **ppv
);

Параметры

pbc

Тип: IBindCtx*

Указатель на интерфейс IBindCtx в объекте контекста привязки. Используется для передачи необязательных параметров обработчику. Содержимое контекста привязки зависит от обработчика. Например, при привязке к BHID_Stream флаги STGM в контексте привязки указывают требуемый режим доступа (чтение или чтение и запись).

bhid

Тип: REFGUID

Ссылка на GUID, указывающий, какой обработчик будет создан. Одно из следующих значений, определенных в Shlguid.h:

BHID_SFObject

Ограничивает использование BindToObject.

BHID_SFUIObject

Ограничивает использование getUIObjectOf.

BHID_SFViewObject

Ограничивает использование параметром CreateViewObject.

BHID_Storage

Пытается получить RIID хранилища, но по умолчанию используется реализация оболочки при сбое.

BHID_Stream

Ограничивает использование только IStream.

BHID_LinkTargetItem

CLSID_ShellItem инициализируется с помощью целевого объекта этого элемента (может быть только SFGAO_LINK). Описание SFGAO_LINK см. в разделе SFGAO .

BHID_StorageEnum

Если элемент является папкой, получает объект IEnumShellItems , с помощью которого выполняется перечисление содержимого хранилища.

BHID_Transfer

Представлено в Windows Vista: если элемент является папкой, получает объект ITransferSource или ITransferDestination .

BHID_PropertyStore

Представлено в Windows Vista: ограничивает использование только IPropertyStore или IPropertyStoreFactory.

BHID_ThumbnailHandler

Представлено в Windows Vista: ограничивает использование только IExtractImage или IThumbnailProvider.

BHID_EnumItems

Представлено в Windows Vista. Если элемент является папкой, получает объект IEnumShellItems , который перечисляет все элементы в папке. Сюда входят папки, не являющиеся папками и скрытые элементы.

BHID_DataObject

Представлено в Windows Vista: возвращает объект IDataObject для использования с элементом или массивом элементов.

BHID_AssociationArray

Представлено в Windows Vista: возвращает объект IQueryAssociations для использования с элементом или массивом элементов.

BHID_Filter

Представлено в Windows Vista: ограничивает использование только IFilter.

BHID_EnumAssocHandlers

Представлено в Windows 7. Возвращает объект IEnumAssocHandlers , используемый для перечисления рекомендуемых обработчиков ассоциаций для данного элемента.

BHID_RandomAccessStream

Представлено в Windows 8: возвращает объект IRandomAccessStream для элемента.

BHID_FilePlaceholder

Представлено в Windows 8.1: возвращает объект, используемый для предоставления функций файла заполнителей.

riid

Тип: REFIID

ИДЕНТИФИКАТОР извлекаемого типа объекта.

ppv

Тип: void**

При возврате этим методом содержит указатель типа riid , возвращаемый обработчиком, заданным параметром rbhid.

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

Тип: HRESULT

Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .

Требования

Требование Значение
Минимальная версия клиента Windows XP с пакетом обновления 1 (SP1) [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header shobjidl_core.h (включая Shobjidl.h)
DLL Shell32.dll (версия 5.00 или более поздняя)

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

IShellFolder

IShellItem