Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Замечание
Библиотека классов Microsoft Foundation (MFC) продолжает поддерживаться. Однако мы больше не добавляем функции или обновляем документацию.
Представляет поток данных ( IStream) с именем IMoniker.
Синтаксис
class CMonikerFile : public COleStreamFile
Участники
Открытые конструкторы
| Имя | Описание |
|---|---|
| CMonikerFile::CMonikerFile | Формирует объект CMonikerFile. |
Открытые методы
| Имя | Описание |
|---|---|
| CMonikerFile::Close | Отсоединяет и освобождает поток и освобождает моникер. |
| CMonikerFile::D etach | Отсоединяет IMoniker объект от этого CMonikerFile объекта. |
| CMonikerFile::GetMoniker | Возвращает текущий моникер. |
| CMonikerFile::Open | Открывает указанный файл для получения потока. |
Защищенные методы
| Имя | Описание |
|---|---|
| CMonikerFile::CreateBindContext | Получает контекст привязки или создает контекст инициализированной привязки по умолчанию. |
Замечания
Моникер содержит сведения так же, как имя пути к файлу. Если у вас есть указатель на интерфейс моникера IMoniker , вы можете получить доступ к определенному файлу без каких-либо других конкретных сведений о расположении файла.
Производный от COleStreamFile, CMonikerFile принимает моникер или строковое представление, которое он может сделать в моникер и привязывается к потоку, для которого моникер является именем. Затем вы можете читать и записывать в этот поток. Реальная цель CMonikerFile состоит в том, чтобы предоставить простой доступ к IStreamименованным IMonikers, чтобы вам не нужно привязаться к потоку самостоятельно, но у вас есть CFile функциональные возможности для потока.
CMonikerFile нельзя использовать для привязки ко всему, кроме потока. Если вы хотите привязаться к хранилищу или объекту, необходимо использовать интерфейс напрямую IMoniker .
Дополнительные сведения о потоках и моникерах см. в справочнике по MFC и IStream и IMoniker в пакете SDK для Windows.
Иерархия наследования
CMonikerFile
Требования
Заголовок: afxole.h
CMonikerFile::Close
Вызовите эту функцию, чтобы отсоединить и освободить поток и освободить моникер.
virtual void Close();
Замечания
Можно вызывать нераскрытые или уже закрытые потоки.
CMonikerFile::CMonikerFile
Формирует объект CMonikerFile.
CMonikerFile();
CMonikerFile::CreateBindContext
Вызовите эту функцию, чтобы создать контекст привязки по умолчанию.
IBindCtx* CreateBindContext(CFileException* pError);
Параметры
pError
Указатель на исключение файла. В случае ошибки будет задана причина.
Возвращаемое значение
Указатель на контекст привязки IBindCtx для привязки к успешному выполнению; в противном случае — ЗНАЧЕНИЕ NULL. Если экземпляр был открыт с IBindHost помощью интерфейса, контекст привязки извлекается из объекта IBindHost. Если интерфейс отсутствует IBindHost или интерфейс не возвращает контекст привязки, создается контекст привязки. Описание интерфейса IBindHost см. в пакете SDK для Windows.
Замечания
Контекст привязки — это объект, в который хранятся сведения о определенной операции привязки моникера. Эту функцию можно переопределить для предоставления пользовательского контекста привязки.
CMonikerFile::D etach
Вызовите эту функцию, чтобы закрыть поток.
BOOL Detach(CFileException* pError = NULL);
Параметры
pError
Указатель на исключение файла. В случае ошибки будет задана причина.
Возвращаемое значение
Имеет ненулевое значение в случае успешного выполнения, иначе — 0.
CMonikerFile::GetMoniker
Вызовите эту функцию, чтобы получить указатель на текущий моникер.
IMoniker* GetMoniker() const;
Возвращаемое значение
Указатель на текущий моникерный интерфейс ( IMoniker).
Замечания
Так как CMonikerFile не является интерфейсом, возвращаемый указатель не увеличивает число ссылок (через AddRef), а моникер освобождается при CMonikerFile освобождении объекта. Если вы хотите держаться на моникере или освободить его самостоятельно, вы должны AddRef это сделать.
CMonikerFile::Open
Вызовите эту функцию-член, чтобы открыть файл или объект moniker.
virtual BOOL Open(
LPCTSTR lpszURL,
CFileException* pError = NULL);
virtual BOOL Open(
IMoniker* pMoniker,
CFileException* pError = NULL);
Параметры
lpszURL
URL-адрес или имя файла, который необходимо открыть.
pError
Указатель на исключение файла. В случае ошибки будет задана причина.
pMoniker
Указатель на моникерный интерфейс IMoniker , используемый для получения потока.
Возвращаемое значение
Имеет ненулевое значение в случае успешного выполнения, иначе — 0.
Замечания
Параметр lpszURL нельзя использовать в Macintosh.
Open.
Для параметра lpszURL можно использовать URL-адрес или имя файла. Например:
CMyMoniker* pMyMoniker = new CMyMoniker();
pMyMoniker->Open(_T("http://www.microsoft.com"));
- или -
CMyMoniker* pMyMoniker = new CMyMoniker();
pMyMoniker->Open(_T("file:c:\\mydata.dat"));
См. также
Класс COleStreamFile
Диаграмма иерархии
Класс CAsyncMonikerFile