¿Cómo crear memoria compartida utilizando el lenguaje C estándar?
Descripción del problema:
Esta es la primera vez que me comunico con esto y no tengo información relevante a mano. ¿Hay algún experto entusiasta que pueda darme el código fuente detallado? ¡Muchas gracias!
Análisis:
Ayudante de CPE::Ayudante de CPE(PCSTR lpFileName)
{
hFile = INVALID _ HANDLE _ VALUE p>
hFile = CreateFileA( lpFileName, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
}
Ayudante de CPE::Ayudante de CPE(PCWSTR lpFileName)
{
hFile = INVALID _ HANDLE _ VALUE
hFile = CreateFileW(lpFileName, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
}
bool CPEHelper::¡Operador! ()
{
if (hFile == INVALID_HANDLE_VALUE)
Devuelve verdadero
Devuelve falso
}
CPEHelper::~CPEHelper(void)
{
if(hFile!=valor de identificador no válido)
cerrar identificador(hFile );
}
bool CPEHelper::MappingFile()
{
hMapFile = crear mapeo de archivos (hFile, NULL, PAGE_READONLY , 0, 0, NULL);
if (hMapFile == NULL)
Devuelve falso
lpMapAddress = MapViewOfFile(hMapFile, FILE_MAP_READ, 0, 0, 0);
if (lpMapAddress == NULL)
Devuelve falso
Devuelve verdadero
}
void CPEHelper::UnMappingFile()
{
UnmapViewOfFile(lpMapAddress);
cerrar identificador(hMapFile);
} p>
Esta es una sección de uno de mis programas.
Espero que te ayude.