2011-03-29 66 views
0

我是编程新手。现在我坚持开发一个C#web应用程序,该应用程序应该能够通过命名管道与Windows窗体进行通信?这可能吗?如果可能的话,如何?使C#web应用程序通过命名管道与Windows窗体进行通信?

注意:Web应用程序将位于服务器上,Windows窗体将位于客户端上。

+1

你为什么不准确地说出你想要达到的目标,而不是描述你认为自己能达到目标的方式。它是什么样的网络应用程序?你为什么想要与客户沟通?您不能使用拉式模型而不是推式模型(即客户端从Web应用程序请求信息而不是Web应用程序向客户端发送数据)? – BenCr 2011-03-29 11:01:19

+0

对于新编程的人来说,使用命名管道的选择看起来有点奇怪。你为什么选择这样的设计? – 2011-03-29 11:16:57

回答

1

我可能是错的,但命名管道(具体来说,WCF中的NetNamedPipeBinding-感谢克里斯)严格地说是进程间IIRC。

你最好在服务器上托管WCF服务,并通过web-app和Windows窗体应用程序连接到服务器(假设你可以使用.Net 4)。

+0

其实你错了。命名管道可用于局域网上机器之间的通信。你可能会感到困惑的是,在WCF中,NetNamedPipeBinding只能在同一台机器上工作,并且不支持远程命名管道。 – 2011-03-29 12:56:22

+0

感谢Chris的澄清。我正在构建一个基于WCF的系统,因此您对我的困惑根源是100%正确的。 – 2011-03-29 17:38:47

0

this article有帮助吗?

摘自:

(...)工作的代码,你可以 下载和查看。

PipeClient.zipPipeServer.zip

这些zip文件均包含一个工作代码 一个Visual Studio的 2005解决方案,并为客户端和服务器之间的通信测试一个 GUI。

+0

该示例包括调用不会在Web应用程序中工作的命令,如果能找到具有命名管道示例的Web应用程序,我会很高兴。 – Koray 2011-03-29 11:01:05

+0

如何在这里http://arstechnica.com/civis/viewtopic.php?f=20&t=59778? – 2011-03-29 11:16:10

+0

此示例代码(主要答案)早于支持命名管道通信(System.IO.Pipes命名空间)的.NET Framework类。现在没有理由使用它,因为我们支持使用.NET类型。上面注释中的第二个链接也与OP问题无关,因为它涉及WCF命名管道绑定,它只能在同一台计算机上工作。 – 2011-03-29 13:03:36

相关问题