public static extern NtStatus NtAlpcSendWaitReceivePort(
     [In] SafeKernelObjectHandle PortHandle,
     AlpcMessageFlags Flags,
     [In] SafeAlpcPortMessageBuffer SendMessage,
     [In, Out] SafeAlpcMessageAttributesBuffer SendMessageAttributes,
     [Out] SafeAlpcPortMessageBuffer ReceiveMessage,
     [In, Out] OptionalLength BufferLength,
     [In, Out] SafeAlpcMessageAttributesBuffer ReceiveMessageAttributes,
     [In] LargeInteger Timeout);
 public static extern NtStatus NtAlpcAcceptConnectPort(
     out SafeKernelObjectHandle PortHandle,
     SafeKernelObjectHandle ConnectionPortHandle,
     AlpcMessageFlags Flags,
     ObjectAttributes ObjectAttributes,
     AlpcPortAttributes PortAttributes,
     IntPtr PortContext,
     SafeAlpcPortMessageBuffer ConnectionRequest,
     SafeAlpcMessageAttributesBuffer ConnectionMessageAttributes,
     bool AcceptConnection
     );
 public static extern NtStatus NtAlpcConnectPortEx(
     out SafeKernelObjectHandle PortHandle,
     [In] ObjectAttributes ConnectionPortObjectAttributes,
     [In] ObjectAttributes ClientPortObjectAttributes,
     [In] AlpcPortAttributes PortAttributes,
     AlpcMessageFlags Flags,
     [In] SafeBuffer ServerSecurityRequirements, // SECURITY_DESCRIPTOR
     [In, Out] SafeAlpcPortMessageBuffer ConnectionMessage,
     [In, Out] OptionalLength BufferLength,
     [In, Out] SafeAlpcMessageAttributesBuffer OutMessageAttributes,
     [In, Out] SafeAlpcMessageAttributesBuffer InMessageAttributes,
     [In] LargeInteger Timeout);
 public static extern NtStatus NtAlpcConnectPort(
     out SafeKernelObjectHandle PortHandle,
     [In] UnicodeString PortName,
     [In] ObjectAttributes ObjectAttributes,
     [In] AlpcPortAttributes PortAttributes,
     AlpcMessageFlags Flags,
     [In] SafeSidBufferHandle RequiredServerSid,
     [In, Out] SafeAlpcPortMessageBuffer ConnectionMessage,
     [In, Out] OptionalLength BufferLength,
     [In, Out] SafeAlpcMessageAttributesBuffer OutMessageAttributes,
     [In, Out] SafeAlpcMessageAttributesBuffer InMessageAttributes,
     [In] LargeInteger Timeout
     );