Both server and client are running .NET Standard 2.1. The additional C# calls to deal with permissions seem missing. What’s a common way of getting past this?
void CreatePipe()
{
if (m_bIsServer)
{
try
{
m_Pipe = new NamedPipeServerStream(
m_szPipeName,
PipeDirection.InOut,
2, // max incoming instances
PipeTransmissionMode.Byte,
PipeOptions.Asynchronous);
Console.WriteLine(“done creating pipe”);
m_szDebugName = “S:”;
m_bIsServer = true;
}
catch ( Exception e )
{
Debug.WriteLine("Exception: " + e.Message);
}
}
else
{
m_Pipe = new NamedPipeClientStream(
".",
m_szPipeName,
PipeDirection.InOut,
PipeOptions.Asynchronous,
System.Security.Principal.TokenImpersonationLevel.Delegation);
m_szDebugName = "C:";
m_bIsServer = false;
}
}