
CSharedFile es la CMemFile-clase derivada que admite los archivos de memoria compartidos. Archivos de memoria se comportan como archivos de disco, excepto que el archivo se almacena en la memoria RAM, en lugar de en el disco. Un archivo de memoria es útil para el almacenamiento temporal rápido o para la transferencia de bytes sin formato o serializa objetos entre procesos independientes.
Archivos de memoria compartida difieren de otros archivos de memoria que se asigna memoria para ellos con el GlobalAlloc función de Windows. La clase CSharedFile almacena los datos en un bloque de memoria global asignada (creado con GlobalAlloc), y este bloque de memoria puede compartirse mediante DDE, el portapapeles o otras OLE y COM uniforme transferencia operaciones de datos, por ejemplo, usando la interfaz IDataObject.
GlobalAlloc devuelve un HGLOBAL manejar en lugar de un puntero a memoria, tales como el puntero devuelto por malloc. En ciertas aplicaciones es necesario el identificador HGLOBAL . Por ejemplo, para colocar datos en el Portapapeles necesita un identificador HGLOBAL.
Tenga en cuenta que CSharedFile no utiliza archivos asignados en memoria y no se comparten los datos directamente entre procesos.
CSharedFile objetos pueden asignar automáticamente su propia memoria o puede adjuntar su propio bloque de memoria para el objeto de CSharedFile llamando a CSharedFile::SetHandle. En cualquier caso, se asigna memoria para crecer automáticamente el archivo de memoria en nGrowBytes-incrementos de tamaño si nGrowBytes no es cero.
Para obtener más información, consulte el artículo archivos en MFC en la Guía del programador de Visual C++ y de Manejo de archivos en la Referencia de la biblioteca de tiempo de ejecución.
# include lt;afxadv.h>
Miembros de la clase | Clase base | Diagrama de jerarquía
Vea tambié&nnbsp;CMemFile, GlobalAlloc, GlobalFree, GlobalRealloc