Функция CreateFileMoniker (objbase.h)
Создает моникер файла на основе указанного пути.
Синтаксис
HRESULT CreateFileMoniker(
[in] LPCOLESTR lpszPathName,
[out] LPMONIKER *ppmk
);
Параметры
[in] lpszPathName
Путь, на котором должен основываться этот моникер.
Этот параметр может указывать относительный путь, UNC-путь или путь на основе букв диска. Если он основан на относительном пути, полученный моникер должен быть составлен в другой моникер файла, прежде чем его можно будет привязать.
[out] ppmk
Адрес переменной указателя IMoniker*, которая получает указатель интерфейса на новый моникер файла. При успешном выполнении функция вызывает AddRef для моникера файла, и вызывающий объект отвечает за вызов Release. При возникновении ошибки значение указателя интерфейса равно NULL.
Возвращаемое значение
Эта функция может возвращать стандартное возвращаемое значение E_OUTOFMEMORY, а также следующие значения.
Код возврата | Описание |
---|---|
|
Моникер создан успешно. |
|
В синтаксисе пути произошла ошибка. |
Комментарии
CreateFileMoniker создает моникер для объекта, хранящегося в файле. Поставщик моникеров (объект, предоставляющий моникеры другим объектам) может вызывать эту функцию, чтобы создать моникер для идентификации файлового объекта, которым он управляет, а затем сделать указатель на этот моникер доступным для других объектов. Объект, идентифицируемый моникером файла, должен также реализовывать интерфейс IPersistFile , чтобы его можно было загрузить при привязке моникера файла.
Если каждый объект находится в отдельном файле, как в серверном приложении OLE, которое полностью поддерживает связывание только с файловым документом, моникеры файлов являются единственным необходимым типом моникера. Чтобы определить объекты меньше файла, поставщик моникеров должен использовать другой тип моникера (например, моникер элемента) в дополнение к моникерам файлов, создавая составной моникер. Составные моникеры потребуются в серверном приложении OLE, которое поддерживает связывание с объектами меньше документа (например, с разделами документа или внедренными объектами).
Моникер файла может быть составлен справа только от другого моникера файла, если первый моникер основан на абсолютном пути, а другой — относительный путь, что приводит к одному моникеру файла на основе сочетания двух путей. Моникер, состоящий справа от другого моникера, должен быть уточнением этого моникера, а моникер файла представляет собой самую большую единицу хранения. Для идентификации объектов, хранящихся в файле, необходимо создать другие типы моникеров (обычно моникеры элементов) справа от моникера файла.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Профессиональная [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows 2000 Server [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | objbase.h |
Библиотека | Ole32.lib |
DLL | Ole32.dll |
Набор API | ext-ms-win-com-ole32-l1-1-4 (представлено в Windows 10 версии 10.0.14393) |