Función SetFileCompletionNotificationModes (winbase.h)

Establece los modos de notificación de un identificador de archivo, lo que permite especificar cómo funcionan las notificaciones de finalización para el archivo especificado.

Sintaxis

BOOL SetFileCompletionNotificationModes(
  [in] HANDLE FileHandle,
  [in] UCHAR  Flags
);

Parámetros

[in] FileHandle

Identificador del archivo.

[in] Flags

Modos que se van a establecer. Se pueden establecer uno o más modos al mismo tiempo; sin embargo, después de establecer un modo para un identificador de archivo, no se puede quitar.

Valor Significado
FILE_SKIP_COMPLETION_PORT_ON_SUCCESS
0x1
Si se cumplen las tres condiciones siguientes, el Administrador de E/S no pone en cola una entrada de finalización al puerto, cuando lo haría normalmente. Las condiciones son:
  • Un puerto de finalización está asociado al identificador de archivo.
  • El archivo se abre para E/S asincrónica.
  • Una solicitud devuelve el éxito inmediatamente sin devolver ERROR_PENDING.

Cuando el parámetro FileHandle es un socket, este modo solo es compatible con proveedores de servicios superpuestas (LSP) que devuelven identificadores de sistemas de archivos instalables (IFS). Para detectar si se instala un LSP que no es IFS, use la función WSAEnumProtocols y examine el miembro dwServiceFlag1 en cada estructura de WSAPROTOCOL_INFO devuelta. Si se borra el bit de XP1_IFS_HANDLES (0x20000), el LSP especificado no es un LSP IFS. Se recomienda a los proveedores que tienen LSP que no son IFS migrar a la Plataforma de filtrado de Windows (PMA).

FILE_SKIP_SET_EVENT_ON_HANDLE
0x2
El Administrador de E/S no establece el evento para el objeto de archivo si una solicitud devuelve un código correcto, o el error devuelto es ERROR_PENDING y la función a la que se llama no es una función sincrónica.

Si se proporciona un evento explícito para la solicitud, sigue señalizado.

Valor devuelto

Devuelve un valor distinto de cero si es correcto o cero de lo contrario.

Para obtener información de error extendida, llame a GetLastError.

Comentarios

Para compilar una aplicación que usa esta función, defina la macro _WIN32_WINNT como 0x0600 o posterior. Para obtener más información, vea Usar los encabezados de Windows.

En Windows 8 y Windows Server 2012, esta función es compatible con las tecnologías siguientes.

Tecnología Compatible
Protocolo Bloque de mensajes del servidor (SMB) 3.0
Conmutación por error transparente (TFO) de SMB 3.0
SMB 3.0 con recursos compartidos de archivos de escalabilidad horizontal (SO)
Sistema de archivos de Volumen compartido de clúster (CsvFS)
Sistema de archivos resistente a errores (ReFS)

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [aplicaciones de escritorio | aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2008 [aplicaciones de escritorio | aplicaciones para UWP]
Plataforma de destino Windows
Encabezado winbase.h (incluye Windows.h)
Library Kernel32.lib
Archivo DLL Kernel32.dll

Vea también

Funciones de administración de archivos