Compartilhar via


Pipes nomeados

Um pipe nomeado é um pipe nomeado, unidirecional ou duplex para comunicação entre o servidor de pipe e um ou mais clientes de pipe. Todas as instâncias de um pipe nomeado compartilham o mesmo nome de pipe, mas cada instância tem seus próprios buffers e identificadores e fornece um canal separado para comunicação cliente/servidor. O uso de instâncias permite que vários clientes de pipe usem o mesmo pipe nomeado simultaneamente.

Qualquer processo pode acessar pipes nomeados, sujeitos a verificações de segurança, tornando os pipes nomeados uma forma fácil de comunicação entre processos relacionados ou não relacionados.

Qualquer processo pode atuar como um servidor e um cliente, possibilitando a comunicação ponto a ponto. Conforme usado aqui, o termo servidor de pipe refere-se a um processo que cria um pipe nomeado e o termo cliente de pipe refere-se a um processo que se conecta a uma instância de um pipe nomeado. A função do lado do servidor para instanciar um pipe nomeado é CreateNamedPipe. A função do lado do servidor para aceitar uma conexão é ConnectNamedPipe. Um processo de cliente se conecta a um pipe nomeado usando a função CreateFile ou CallNamedPipe .

Pipes nomeados podem ser usados para fornecer comunicação entre processos no mesmo computador ou entre processos em computadores diferentes em uma rede. Se o serviço de servidor estiver em execução, todos os pipes nomeados estarão acessíveis remotamente. Se você pretende usar apenas um pipe nomeado localmente, negue o acesso a NT AUTHORITY\NETWORK ou alterne para o RPC local.

Para obter mais informações, consulte estes tópicos: