CreateNamedPipe function kernel32

HANDLE CreateNamedPipe(
  1. PCWSTR lpName,
  2. FILE_FLAGS_AND_ATTRIBUTES dwOpenMode,
  3. NAMED_PIPE_MODE dwPipeMode,
  4. int nMaxInstances,
  5. int nOutBufferSize,
  6. int nInBufferSize,
  7. int nDefaultTimeOut,
  8. Pointer<SECURITY_ATTRIBUTES>? lpSecurityAttributes,
)

Creates an instance of a named pipe and returns a handle for subsequent pipe operations.

To learn more, see learn.microsoft.com/windows/win32/api/namedpipeapi/nf-namedpipeapi-createnamedpipew.

Implementation

@pragma('vm:prefer-inline')
HANDLE CreateNamedPipe(
  PCWSTR lpName,
  FILE_FLAGS_AND_ATTRIBUTES dwOpenMode,
  NAMED_PIPE_MODE dwPipeMode,
  int nMaxInstances,
  int nOutBufferSize,
  int nInBufferSize,
  int nDefaultTimeOut,
  Pointer<SECURITY_ATTRIBUTES>? lpSecurityAttributes,
) => HANDLE(
  _CreateNamedPipe(
    lpName,
    dwOpenMode,
    dwPipeMode,
    nMaxInstances,
    nOutBufferSize,
    nInBufferSize,
    nDefaultTimeOut,
    lpSecurityAttributes ?? nullptr,
  ),
);