Compartir a través de


Función EngMapFile (winddi.h)

La función EngMapFile crea o abre un archivo y lo asigna al espacio del sistema.

Sintaxis

ENGAPI PVOID EngMapFile(
  [in]  LPWSTR    pwsz,
  [in]  ULONG     cjSize,
  [out] ULONG_PTR *piFile
);

Parámetros

[in] pwsz

Puntero a una cadena terminada en null que contiene el nombre completo del archivo que se va a asignar. Un ejemplo de una cadena de nombre de archivo completo es L"\?? \c:\test.dat".

[in] cjSize

Especifica el número de bytes del archivo que se va a asignar.

[out] piFile

Puntero a una ubicación de memoria que recibe un identificador para el archivo asignado, siempre que la asignación se haya realizado correctamente. Si la asignación no se realizó correctamente, la ubicación de memoria recibe el valor cero. Cuando es necesario liberar el archivo asignado, este valor debe pasarse a EngUnmapFile.

Valor devuelto

EngMapFile devuelve un puntero a la vista asignada del archivo si se realiza correctamente. De lo contrario, devuelve NULL.

Comentarios

Si el archivo ya existe, EngMapFile se abre y lo asigna para lectura y escritura. Si el archivo no existe, EngMapFile crea y lo asigna para lectura y escritura.

El valor de cjSize afecta a la asignación del archivo de la siguiente manera:

  • Cuando cjSize es cero, GDI asigna el archivo en su totalidad.
  • Cuando cjSize es mayor que el tamaño del archivo, GDI expande el archivo a bytes cjSize en tamaño antes de asignarlo en la memoria del sistema. No se debe realizar ninguna suposición sobre el contenido de la memoria que se extiende más allá del tamaño original del archivo.
  • Cuando cjSize es menor que el tamaño del archivo, GDI trunca el archivo en bytes cjSize en tamaño antes de asignarlo a la memoria del sistema.
Un controlador puede leer y escribir en el archivo a través del puntero devuelto.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Windows 2000 y versiones posteriores de los sistemas operativos Windows.
Plataforma de destino Universal
Encabezado winddi.h (incluya Winddi.h)
Library Win32k.lib
Archivo DLL Win32k.sys

Consulte también

EngDeleteFile

EngUnmapFile