DosCreatePipe

Creates an unnamed pipe.

Syntax
DosCreatePipe(phfRead, phfWrite, cb)

Parameters

 * phfRead (PHFILE) - output: A pointer to an HFILE where the read handle for the pipe is returned.
 * phfWrite (PHFILE) - output: A pointer to an HFILE where the write handle for the pipe is returned.
 * cb (ULONG) - input: The amount of storage to reserve for the pipe.

Return Code

 * ulrc (APIRET) - returns:DosCreatePipe returns one of the following values:
 * 0 NO_ERROR
 * 8 ERROR_NOT_ENOUGH_MEMORY

Example Code
This example creates an unnamed pipe, and then closes its read and write handles. 
 * 1) define INCL_DOSQUEUES       /* Queue values */
 * 2) define INCL_DOSERRORS       /* DOS Error values */
 * 3) include 
 * 4) include 

int main(VOID) { HFILE   ReadHandle  = 0;          /* Read handle of pipe */ HFILE   WriteHandle = 0;          /* Write handle of pipe */ ULONG   PipeSize    = 4096;       /* Size of pipe */ APIRET  rc          = NO_ERROR;   /* API return code */

rc = DosCreatePipe(&ReadHandle, &WriteHandle, PipeSize);

if (rc != NO_ERROR) { printf("DosCreatePipe error: return code = %u\n", rc); return 1; }

rc = DosClose(ReadHandle); if (rc != NO_ERROR) { printf("DosClose error: return code = %u\n", rc); return 1; }

rc = DosClose(WriteHandle); if (rc != NO_ERROR) { printf("DosClose error: return code = %u\n", rc); return 1; }

return NO_ERROR; } 

Related Functions

 * DosClose
 * DosDupHandle
 * DosRead
 * DosWrite