Функция SHCreateItemFromParsingName (shobjidl_core.h)
Создает и инициализирует объект элемента оболочки из имени синтаксического анализа.
Синтаксис
SHSTDAPI SHCreateItemFromParsingName(
[in] PCWSTR pszPath,
[in, optional] IBindCtx *pbc,
[in] REFIID riid,
[out] void **ppv
);
Параметры
[in] pszPath
Тип: PCWSTR
Указатель на отображаемое имя.
[in, optional] pbc
Тип: IBindCtx*
Необязательный элемент. Указатель на контекст привязки, используемый для передачи параметров в качестве входных и выходных данных в функцию синтаксического анализа. Эти переданные параметры часто относятся к источнику данных и задокументированы владельцами источников данных. Например, источник данных файловой системы принимает анализируемое имя (как WIN32_FIND_DATA структуру) с помощью параметра контекста STR_FILE_SYS_BIND_DATA привязки.
STR_PARSE_PREFER_FOLDER_BROWSING можно передать, чтобы указать, что URL-адреса анализируются с помощью источника данных файловой системы, когда это возможно. Создайте объект контекста привязки с помощью CreateBindCtx и заполните значения с помощью IBindCtx::RegisterObjectParam. Полный список этих ключей см. в разделе Привязка ключей строк контекста. Пример использования этого параметра см. в разделе Пример анализа с помощью параметров .
Если данные не передаются в функцию синтаксического анализа или не получены из нее, это значение может иметь значение NULL.
[in] riid
Тип: REFIID
Ссылка на IID интерфейса, извлекаемого через ppv, обычно IID_IShellItem или IID_IShellItem2.
[out] ppv
Тип: void**
При успешном выполнении этого метода содержит указатель интерфейса, запрошенный в riid. Обычно это IShellItem или IShellItem2.
Возвращаемое значение
Тип: HRESULT
Если эта функция завершается успешно, она возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
Мы рекомендуем использовать макрос IID_PPV_ARGS , определенный в Objbase.h, для упаковки параметров riid и ppv . Этот макрос предоставляет правильный IID на основе интерфейса, на который указывает значение в ppv, что исключает возможность ошибки кода в riid , которая может привести к непредвиденным результатам.
Требования
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | shobjidl_core.h (включая Shobjidl.h) |
DLL | Shell32.dll |