Windows Win32IPCkernel32.dll
CallNamedPipeW
Conecta a um pipe nomeado, envia uma mensagem, lê a resposta e fecha a conexão — tudo em uma única chamada de conveniência.
Descrição
Padrão requisição-resposta simples sobre pipes, útil para IPC ocasional sem manter uma conexão persistente.
Header:
namedpipeapi.hDLL: kernel32.dllAssinatura
BOOL CallNamedPipeW(
LPCWSTR lpNamedPipeName,
LPVOID lpInBuffer,
DWORD nInBufferSize,
LPVOID lpOutBuffer,
DWORD nOutBufferSize,
LPDWORD lpBytesRead,
DWORD nTimeOut
);Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
| lpNamedPipeName | LPCWSTR | Nome do pipe a chamar. |
| lpInBuffer | LPVOID | Dados da requisição a enviar. |
| nInBufferSize | DWORD | Tamanho de `lpInBuffer`. |
| lpOutBuffer | LPVOID | Recebe os dados da resposta. |
| nOutBufferSize | DWORD | Tamanho de `lpOutBuffer`. |
| lpBytesRead | LPDWORD | Recebe o número de bytes de resposta lidos. |
| nTimeOut | DWORD | Tempo máximo de espera pela disponibilidade do pipe. |
Valor de retorno
Diferente de zero em sucesso; 0 em erro (consulte GetLastError).
Códigos de erro (GetLastError)
- ERROR_FILE_NOT_FOUND(2)
- O sistema não conseguiu encontrar o arquivo especificado.
- ERROR_PIPE_BUSY(231)
- Todas as instâncias do pipe estão ocupadas.