Compartir a través de


Función CreateLogFile (clfsw32.h)

Crea o abre un registro. El registro se puede dedicar o multiplexar, 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 de :<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", como hace 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, consulte tipos de registro.

[in] fDesiredAccess

Tipo de acceso que el identificador devuelto tiene 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 de eliminación de registros
 

Una 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 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 entra en conflicto con ningún 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 varios 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 el 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 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

Acción que se va a realizar.

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

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 siguientes valores.

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 una cola de archivado para los contenedores de registro de reciclaje.

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 esta marca se establece 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 ejecuta 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 Valor
cliente mínimo admitido Windows Vista [solo aplicaciones de escritorio]
servidor mínimo admitido Windows Server 2003 R2 [solo aplicaciones de escritorio]
de la plataforma de destino de Windows
encabezado de clfsw32.h
biblioteca de Clfsw32.lib
DLL de Clfsw32.dll

Consulte también

ACCESS_MASK

AddLogContainer

AddLogContainerSet

CLFS_CONTAINER_INFORMATION

funciones comunes del sistema de archivos de registro

createLogMarshallingArea

SECURITY_ATTRIBUTES