SysPipeWindowsOpen
(FUN)
FUNCTION SysPipeWindowsOpen : RTS_IEC_HANDLE
Open a named pipe Implementation internal: If overlapped, then also create event for overlapped mode. The function returns a handle to a SysPipeWindows instance that can be used to access the named pipe. If the CreateNamedPipe function was not successfully called on the server prior to this operation, a pipe will not exist and SysPipeWindowsOpen will fail with ERR_NO_OBJECT (0x10) in pResult. Implementation internal: A SysPipeWindows instance holds
a handle to the pipe file
an instance of the OVERLAPPED structure with a handle to an event for overlapped mode
- InOut:
Scope
Name
Type
Comment
Return
SysPipeWindowsOpen
RTS_IEC_HANDLE
Input
pszName
STRING
Pipe name
dwAccessMode
DWORD
Access mode - SysPipe_Interfaces.SYSPIPE_OPEN_READ - SysPipe_Interfaces.SYSPIPE_OPEN_WRITE - SysPipe_Interfaces.SYSPIPE_OPEN_READ OR SysPipe_Interfaces.SYSPIPE_OPEN_WRITE
xOverlapped
BOOL
TRUE: Overlapped mode (asynchronous). FALSE: Synchronous mode. See: https://docs.microsoft.com/en-us/windows/win32/ipc/named-pipe-open-modes
pResult
POINTER TO RTS_IEC_RESULT
- Error code:
ERR_OK: Success
ERR_PARAMETER: If one of the parameters is invalid (szName = NULL).
ERR_END_OF_OBJECT: Pipe doesn’t exist because the CreateNamedPipe function was not successfully called on the server prior to this operation.
ERR_DUPLICATE: Named pipe object already exists. A valid handle to this object is returned here.
ERR_OUT_OF_LIMITS: There is at least one active pipe instance but there are no available listener pipes on the server, which means all pipe instances are currently connected.
ERR_FAILED: Any other error (see log)