Função SetFileCompletionNotificationModes (winbase.h)

Define os modos de notificação para um identificador de arquivo, permitindo que você especifique como as notificações de conclusão funcionam para o arquivo especificado.

Sintaxe

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

Parâmetros

[in] FileHandle

Um manipulador para o arquivo.

[in] Flags

Os modos a serem definidos. Um ou mais modos podem ser definidos ao mesmo tempo; no entanto, depois que um modo tiver sido definido para um identificador de arquivo, ele não poderá ser removido.

Valor Significado
FILE_SKIP_COMPLETION_PORT_ON_SUCCESS
0x1
Se as três condições a seguir forem verdadeiras, o Gerenciador de E/S não enfileira uma entrada de conclusão para a porta, quando normalmente faria isso. As condições são:
  • Uma porta de conclusão está associada ao identificador de arquivo.
  • O arquivo é aberto para E/S assíncrona.
  • Uma solicitação retorna êxito imediatamente sem retornar ERROR_PENDING.

Quando o parâmetro FileHandle é um soquete, esse modo só é compatível com provedores de serviços em camadas (LSP) que retornam identificadores de IFS (Sistemas de Arquivos Instaláveis). Para detectar se um LSP não IFS está instalado, use a função WSAEnumProtocols e examine o membro dwServiceFlag1 em cada estrutura WSAPROTOCOL_INFO retornada. Se o bit XP1_IFS_HANDLES (0x20000) for limpo, o LSP especificado não será um LSP IFS. Os fornecedores que têm LSPs não IFS são incentivados a migrar para a Plataforma de Filtragem do Windows (WFP).

FILE_SKIP_SET_EVENT_ON_HANDLE
0x2
O Gerenciador de E/S não define o evento para o objeto de arquivo se uma solicitação retorna com um código de êxito ou o erro retornado é ERROR_PENDING e a função chamada não é uma função síncrona.

Se um evento explícito for fornecido para a solicitação, ele ainda será sinalizado.

Retornar valor

Retornará diferente de zero se tiver êxito ou zero caso contrário.

Para obter informações de erro estendidas, chame GetLastError.

Comentários

Para compilar um aplicativo que usa essa função, defina a macro _WIN32_WINNT como 0x0600 ou posterior. Para obter mais informações, consulte Usando os cabeçalhos do Windows.

No Windows 8 e Windows Server 2012, essa função é compatível com as tecnologias a seguir.

Tecnologia Com suporte
Protocolo SMB (SMB) 3.0 Sim
TFO (Failover transparente) do SMB 3.0 Sim
SMB 3.0 com compartilhamentos de arquivos de expansão (SO) Sim
Sistema de arquivos de Volume Compartilhado Clusterizado (CsvFS) Sim
ReFS (Sistema de Arquivos Resiliente) Sim

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho winbase.h (inclua Windows.h)
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

Funções de gerenciamento de arquivos