Clase CMonikerFile
Representa un flujo de datos (IStream) nombrado por un IMoniker.
Sintaxis
class CMonikerFile : public COleStreamFile
Miembros
Constructores públicos
Nombre | Descripción |
---|---|
CMonikerFile::CMonikerFile | Construye un objeto CMonikerFile . |
Métodos públicos
Nombre | Descripción |
---|---|
CMonikerFile::Close | Desasocia y libera el flujo y libera el moniker. |
CMonikerFile::Detach | Desasocia el IMoniker de este objeto CMonikerFile . |
CMonikerFile::GetMoniker | Devuelve el moniker actual. |
CMonikerFile::Open | Abre el archivo especificado para obtener un flujo. |
Métodos protegidos
Nombre | Descripción |
---|---|
CMonikerFile::CreateBindContext | Obtiene el contexto de enlace o crea un contexto de enlace inicializado predeterminado. |
Comentarios
Un moniker contiene información muy similar a un nombre de ruta de acceso a un archivo. Si tiene un puntero a la interfaz IMoniker
de un objeto moniker, puede obtener acceso al archivo identificado sin tener ninguna otra información específica sobre dónde se encuentra realmente el archivo.
CMonikerFile
, que deriva de COleStreamFile
, toma un moniker o una representación de cadena que pueda convertir en un moniker y lo enlaza al flujo para el que el moniker es un nombre. Después, puede leer y escribir en el flujo. El propósito real de CMonikerFile
es proporcionar acceso sencillo a IStream
s denominados por IMoniker
s para que no tenga que enlazarse a un flujo usted mismo, pero tiene funciones CFile
para las funciones.
CMonikerFile
no se puede usar para enlazar a elementos que no sean un flujo. Si quiere enlazar al almacenamiento o a un objeto, debe usar la interfaz del IMoniker
directamente.
Para obtener más información sobre los flujos y los monikers, vea COleStreamFile en la referencia de MFC e IStream e IMoniker en Windows SDK.
Jerarquía de herencia
CMonikerFile
Requisitos
Encabezado: afxole.h
CMonikerFile::Close
Llame a esta función para desasociar y liberar el flujo y liberar el moniker.
virtual void Close();
Comentarios
Se puede llamar a la función en flujos no abiertos o ya cerrados.
CMonikerFile::CMonikerFile
Construye un objeto CMonikerFile
.
CMonikerFile();
CMonikerFile::CreateBindContext
Llame a esta función para crear un contexto de enlace inicializado predeterminado.
IBindCtx* CreateBindContext(CFileException* pError);
Parámetros
pError
Puntero a una excepción de archivo. En caso de error, se establecerá en la causa.
Valor devuelto
Puntero al contexto de enlace IBindCtx con el que se enlazará si se ejecuta correctamente; en caso contrario, NULL. Si la instancia se ha abierto con una interfaz IBindHost
, el contexto de enlace se recupera de IBindHost
. Si no hay ninguna interfaz IBindHost
o la interfaz no devuelve un contexto de enlace, se crea un contexto de enlace. Para leer una descripción de la interfaz IBindHost, vea Windows SDK.
Comentarios
Un contexto de enlace es un objeto que almacena información sobre una operación de enlace de moniker determinada. Puede invalidar esta función para proporcionar un contexto de enlace personalizado.
CMonikerFile::Detach
Llame a esta función para cerrar el flujo.
BOOL Detach(CFileException* pError = NULL);
Parámetros
pError
Puntero a una excepción de archivo. En caso de error, se establecerá en la causa.
Valor devuelto
Si es correcta, su valor es distinto de cero. En caso contrario, es cero.
CMonikerFile::GetMoniker
Llame a esta función para recuperar un puntero en el moniker actual.
IMoniker* GetMoniker() const;
Valor devuelto
Puntero a la interfaz de moniker actual (IMoniker).
Comentarios
Puesto que CMonikerFile
no es una interfaz, el puntero devuelto no incrementa el recuento de referencias (mediante AddRef), y el moniker se libera al mismo tiempo que el objeto CMonikerFile
. Si quiere conservar el moniker o liberarlo usted mismo, debe AddRef
.
CMonikerFile::Open
Llame a esta función miembro para abrir un archivo o un objeto moniker.
virtual BOOL Open(
LPCTSTR lpszURL,
CFileException* pError = NULL);
virtual BOOL Open(
IMoniker* pMoniker,
CFileException* pError = NULL);
Parámetros
lpszURL
Dirección URL o nombre de archivo del archivo que se abrirá.
pError
Puntero a una excepción de archivo. En caso de error, se establecerá en la causa.
pMoniker
Puntero a la interfaz de moniker IMoniker
que se usará para obtener un flujo.
Valor devuelto
Si es correcta, su valor es distinto de cero. En caso contrario, es cero.
Comentarios
El parámetro lpszURL no se puede usar en Macintosh. Solo se puede usar la forma pMoniker de Open
.
Puede usar una dirección URL o un nombre de archivo para el parámetro lpszURL. Por ejemplo:
CMyMoniker* pMyMoniker = new CMyMoniker();
pMyMoniker->Open(_T("http://www.microsoft.com"));
O bien
CMyMoniker* pMyMoniker = new CMyMoniker();
pMyMoniker->Open(_T("file:c:\\mydata.dat"));
Consulte también
COleStreamFile (clase)
Gráfico de jerarquías
CAsyncMonikerFile (clase)