Compartilhar via


Função DisconnectNamedPipe (namedpipeapi.h)

Desconecta a extremidade do servidor de uma instância de pipe nomeado de um processo de cliente.

Sintaxe

BOOL DisconnectNamedPipe(
  [in] HANDLE hNamedPipe
);

Parâmetros

[in] hNamedPipe

Um identificador para uma instância de um pipe nomeado. Esse identificador deve ser criado pela função CreateNamedPipe .

Valor retornado

Se a função for bem-sucedida, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.

Comentários

Se a extremidade do cliente do pipe nomeado estiver aberta, a função DisconnectNamedPipe forçará essa extremidade do pipe nomeado fechado. O cliente recebe um erro na próxima vez que tentar acessar o pipe. Um cliente que é forçado a sair de um pipe pelo DisconnectNamedPipe ainda deve usar a função CloseHandle para fechar a extremidade do pipe.

O pipe existe desde que um processo de servidor ou cliente tenha um identificador aberto para o pipe.

Quando o processo do servidor desconecta uma instância de pipe, todos os dados não lidos no pipe são descartados. Antes de desconectar, o servidor pode garantir que os dados não sejam perdidos chamando a função FlushFileBuffers , que não retorna até que o processo do cliente leia todos os dados.

O processo do servidor deve chamar DisconnectNamedPipe para desconectar um identificador de pipe de seu cliente anterior antes que o identificador possa ser conectado a outro cliente usando a função ConnectNamedPipe .

Windows 10, versão 1709: os pipes só têm suporte em um app-container; ou seja, de um processo UWP para outro processo UWP que faz parte do mesmo aplicativo. Além disso, os pipes nomeados devem usar a sintaxe \\.\pipe\LOCAL\ para o nome do pipe.

Exemplos

Para obter um exemplo, consulte Servidor de Pipe Multithreaded.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho namedpipeapi.h
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

CloseHandle

ConnectNamedPipe

CreateNamedPipe

FlushFileBuffers

Funções de pipe

Visão geral de pipes