代码之家  ›  专栏  ›  技术社区  ›  KenD Abbas Hadavandi

.NET 3.5(c)网络上的命名管道

  •  3
  • KenD Abbas Hadavandi  · 技术社区  · 15 年前

    我正在努力获得一个.NET( 不是 通过网络进行通信的命名管道。这个 MSDN documentation 意味着这是可能的,不是微不足道的。但是我的代码:

     using (NamedPipeClientStream pipeClient = new NamedPipeClientStream(servername, "myPipe", PipeDirection.InOut, PipeOptions.None, TokenImpersonationLevel.Impersonation))
    

    …当servername=“localhost”和管道服务器位于同一个框中时,效果很好。但是如果它是另一台机器——不管我是否让servername成为IP地址、DNS名称、netbios名称、unc路径等等——意味着管道永远不会连接。它实际上不会失败,pipeclient.connect()就在那里。

    在不同的论坛、博客和网站上有很多不同的和相互冲突的帖子。任何人都能把记录设置得笔直并告诉我:如何让命名管道客户机从一台计算机上的一个C应用程序连接到另一台计算机上运行的命名管道服务器?

    1 回复  |  直到 15 年前
        1
  •  2
  •   David Gladfelter    15 年前

    你在工作时这样做吗?公司防火墙或防病毒程序是否正在运行?检查Windows事件日志和开始栏上任务通知图标区域中的所有应用程序,以获取有关阻止此操作的人员的提示。