Función CreateLogFile (clfsw32.h)

Crea o abre un registro. El registro puede ser dedicado o multiplexado, y depende del nombre del registro. Use la función CloseHandle para cerrar el registro.

Sintaxis

CLFSUSER_API HANDLE CreateLogFile(
  [in]           LPCWSTR               pszLogFileName,
  [in]           ACCESS_MASK           fDesiredAccess,
  [in]           DWORD                 dwShareMode,
  [in, optional] LPSECURITY_ATTRIBUTES psaLogFile,
  [in]           ULONG                 fCreateDisposition,
  [in]           ULONG                 fFlagsAndAttributes
);

Parámetros

[in] pszLogFileName

Nombre del registro.

Este nombre se especifica al crear el registro mediante CreateLogFile. En el ejemplo siguiente se identifica el formato que se va a usar.

Registro:<LogName>[::<LogStreamName>]

Por ejemplo: la ruta de acceso "LOG:c:\MyDirectory\MyLog" crea el archivo "c:\MyDirectory\MyLog.blf". La ruta de acceso "?? \LOG:\HarddiskVolume1\MyDirectory\MyLog" crea el archivo "\.\HarddiskVolume1\MyDirectory\MyLog.blf", al igual que la ruta de acceso "\clfs\Device\HarddiskVolume1\MyDirectory\MyLog".

<LogName> corresponde a una ruta de acceso de archivo válida en el sistema de archivos y <LogStreamName> es el nombre único de una secuencia de registro en el registro. Para obtener más información, vea Tipos de registro.

[in] fDesiredAccess

El tipo de acceso que tiene el identificador devuelto al objeto de registro.

Valor Significado
GENERIC_READ
Especifica el acceso de lectura al objeto .
GENERIC_WRITE
Especifica el acceso de escritura al objeto .
DELETE
Especificación del acceso a la eliminación de registros
 

Un OR bit a bit de dos o más de estas marcas permite combinaciones de lectura, escritura y eliminación del acceso al objeto.

Nota Debe especificar el acceso DELETE para poder eliminar el registro.

 
Windows Server 2003 R2: Este parámetro debe establecerse en GENERIC_WRITE.

[in] dwShareMode

Modo de uso compartido de un archivo.

Un cliente no puede solicitar un modo de uso compartido que entre en conflicto con cualquier modo especificado en cualquier solicitud abierta anterior que tenga un identificador abierto.

Si este parámetro es cero y la función se ejecuta correctamente, el objeto no se puede compartir y no se puede volver a abrir hasta que se cierre el identificador.

Este parámetro puede ser uno o más de los siguientes valores.

Valor Significado
FILE_SHARE_DELETE
Habilita las operaciones abiertas en el objeto para solicitar el acceso de eliminación. Sin este valor, otros procesos no pueden abrir el objeto si se solicita acceso de eliminación.
FILE_SHARE_READ
Habilita las operaciones abiertas en el objeto para solicitar acceso de lectura. Sin este valor, otros procesos no pueden abrir el objeto si se solicita acceso de lectura.
FILE_SHARE_WRITE
Habilita las operaciones abiertas en el objeto para solicitar acceso de escritura. Sin este valor, otros procesos no pueden abrir el objeto si se solicita acceso de escritura.

[in, optional] psaLogFile

Puntero a una estructura de SECURITY_ATTRIBUTES que especifica los atributos de seguridad de un registro.

Determina si los procesos secundarios pueden heredar el identificador devuelto. Si este parámetro es NULL, no se puede heredar el identificador.

El miembro lpSecurityDescriptor de SECURITY_ATTRIBUTES especifica un descriptor de seguridad para el nuevo identificador de registro. Si psaLogFile es NULL, el objeto obtiene un descriptor de seguridad predeterminado. Las listas de control de acceso (ACL) del descriptor de seguridad predeterminado para un registro proceden del token principal o de suplantación del creador.

[in] fCreateDisposition

Una acción que se va a realizar.

Este parámetro puede ser uno de los valores siguientes.

Valor Significado
CREATE_NEW
Crea un nuevo archivo y produce un error si el archivo ya existe.
OPEN_EXISTING
Abre un archivo existente y produce un error si el archivo no existe.
OPEN_ALWAYS
Abre un archivo existente o crea el archivo si no existe.

[in] fFlagsAndAttributes

Atributos y marcas de archivo para el archivo.

Este parámetro puede tomar los valores siguientes.

Valor Significado
FILE_ATTRIBUTE_ARCHIVE
Este registro no efímero debe archivarse.

Si no se proporciona esta marca, no es necesario archivar el registro y no se mantiene un final de archivo para reciclar contenedores de registro.

FILE_FLAG_OVERLAPPED
Si se establece la marca FILE_FLAG_OVERLAPPED , se omiten todos los demás valores de marca.

Especificar FILE_FLAG_OVERLAPPED significa que se abre un archivo para E/S superpuesta, lo que permite realizar más de una operación de E/S en el identificador de registro. Si se establece esta marca al crear un registro, todas las llamadas de E/S asincrónicas a ese registro deben especificar una estructura superpuesta y sincronizarse con la finalización diferida de la llamada.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es un identificador del registro.

Si se produce un error en la función, el valor devuelto es INVALID_HANDLE_VALUE. Para obtener información de error extendida, llame a GetLastError.

En la lista siguiente se identifican los posibles códigos de error:

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 R2 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado clfsw32.h
Library Clfsw32.lib
Archivo DLL Clfsw32.dll

Consulte también

ACCESS_MASK

AddLogContainer

AddLogContainerSet

CLFS_CONTAINER_INFORMATION

Funciones comunes del sistema de archivos de registro

CreateLogMarshallingArea

SECURITY_ATTRIBUTES