2个C#程序如何通过命名管道相互通信。
如果我在具有提升权限的管理员帐户下运行程序,一切正常
我需要使用帐户“本地系统”将此程序作为服务运行,但之后我无法访问网络。
情况:
在服务器上
在服务器程序中,我按照以下方式创建管道
PipeSecurity psobj = new PipeSecurity();
psobj.AddAccessRule(new PipeAccessRule("EveryOne", PipeAccessRights.FullControl, AccessControlType.Allow));
NamedPipeServerStream requestpipe = new NamedPipeServerStream(REQUESTPIPENAME, PipeDirection.InOut, numThreads, PipeTransmissionMode.Byte,
PipeOptions.Asynchronous, 2048, 2048, psobj);
在客户端程序中,我按如下方式连接到命名管道:
NamedPipeClientStream pipeClient = new NamedPipeClientStream(SERVER, REQUESTPIPENAME, PipeDirection.InOut, PipeOptions.WriteThrough)
我还模拟了2台Windows 7计算机之间的情况(1个物理计算机和1个虚拟计算机,而不是桥接计算机)。我在这里尝试了一些选项:
有什么建议吗?