我正在努力让.NET( NOT 一个WCF)命名管道通过网络进行通信。 MSDN documentation暗示这是可能的,同样微不足道。但是我的代码:
using (NamedPipeClientStream pipeClient = new NamedPipeClientStream(servername, "myPipe", PipeDirection.InOut, PipeOptions.None, TokenImpersonationLevel.Impersonation))
...当servername =“localhost”且管道服务器位于同一个盒子上时效果很好。但如果它是另一台机器 - 无论我是否将服务器名称设为IP地址,DNS名称,NetBIOS名称,UNC路径等 - 意味着管道永远不会连接。它实际上并没有失败,pipeClient.Connect()就在那里。
各种论坛,博客和网站上有很多不同且相互矛盾的帖子。任何人都可以直接设置记录并告诉我:如何让命名管道客户端从一台机器上的一个C#应用程序连接到另一台机器上运行的命名管道服务器?
答案 0 :(得分:2)
你在上班吗?企业防火墙或防病毒程序是否正在运行?检查Windows事件日志以及开始栏上任务通知图标区域中的所有应用程序,以获取有关阻止此操作的提示。