Under DOS, the functions can be run only on a remote server that has interprocess communication (IPC) shares. DOS applications use the NMPIPE.H header file with these APIs.
DOS supports only client processes; a pipe already must have been created and connected on a remote server. Child processes inherit the open file handles of a parent process.
Note: The Family API (FAPI) replacement library routine for DosOpen provides support for DASD opens (open Mode Flag 0x8000). Since DOS does not support this operation, pipe operations on this type of file handle return ERROR_INVALID_HANDLE rather than ERROR_BAD_PIPE.
DOS supports asynchronous reading and writing of named pipes. DosReadAsyncNmPipe does an asynchronous read from a file. It transfers the specified number of bytes from a file to a buffer asynchronously with the requesting process execution.
DosWriteAsyncNmPipe does an asynchronous write to a file. It transfers the specified number of bytes to a file from a buffer asynchronously with respect to the execution of the requesting process. (For an example of how to use DosReadAysncNmPipe and DosWriteAysncNmPipe, refer to Notes for DOS Applications.)
DosBufReset (or 32-bit DosResetBuffer) returns ERROR_BROKEN_PIPE if the handle is to a named pipe that already has been closed.
Note that standard C calls to open, to close, or to perform other generic operations, can be used instead of the corresponding calls to DosOpen, close, and so on. This is also true for calls to Int 21 open, close, and other generic functions.