DosSetNmPHandState
Bindings: C, MASM
This call sets the read and blocking modes of a named pipe.
DosSetNmPHandState (Handle, PipeHandleState)
Handle (HPIPE) - input
Handle of the named pipe returned by DosMakeNmPipe or DosOpen.
PipeHandleState (USHORT) - input
Named pipe handle state, consists of the following bit fields:
Bit Description
15 Blocking flag:
0 = Reads /Writes block if no data available.
1 = Reads/Writes return immediately if no data available.
Reads normally block until at least partial data can be
returned. Writes by default block until all bytes requested
have been written. Non-blocking mode (B = 1) changes this
behavior as follows:
DosRead
Returns BytesRead = 0 if no data is available.
DosWrite
Returns BytesWritten = 0 if there is not enough buffer
space available in the pipe. Otherwise, the entire data
area is transferred.
14-10 Reserved and must be set to zero.
9-8 Read Mode flag:
00 = Read pipe as byte stream.
01 = Read pipe as a message stream.
7-0 Reserved and must be set to zero.
rc (USHORT) - return
Return code descriptions are:
0 NO_ERROR
87 ERROR_INVALID_PARAMETER
230 ERROR_BAD_PIPE
231 ERROR_PIPE_BUSY
233 ERROR_PIPE_NOT_CONNECTED
Remarks
The read mode and blocking/non-blocking mode of a named pipe can be
changed. The pipe mode can not be changed to non-blocking when another
thread is blocked on an I/O to the same end of the pipe.
Created using Inf-PHP v.2 (c) 2003 Yuri Prokushev
Created using Inf-HTML v.0.9b (c) 1995 Peter Childs