DisconnectNamedPipe
The DisconnectNamedPipe
function disconnects the server end of a named pipe instance from a client
process.
BOOL DisconnectNamedPipe(
HANDLE hNamedPipe |
// handle to named
pipe |
); |
|
Parameters
hNamedPipe
Identifies an
instance of a named pipe. This handle must be created by the CreateNamedPipe
Return Values
If the
function succeeds, the return value is nonzero.
If the
function fails, the return value is zero. To get extended error information,
call GetLastError
Remarks
If the client
end of the named pipe is open, the DisconnectNamedPipe function forces
that end of the named pipe closed. The client receives an error the next time
it attempts to access the pipe. A client that is forced off a pipe by DisconnectNamedPipe
must still use the CloseHandle function to close its end of the pipe.
When the
server process disconnects a pipe instance, any unread data in the pipe is
discarded. Before disconnecting, the server can make sure data is not lost by
calling the FlushFileBuffers function, which does not return until the
client process has read all the data.
The server
process must call DisconnectNamedPipe to disconnect a pipe handle from
its previous client before the handle can be connected to another client by
using the ConnectNamedPipe function.
See Also