C#中用NamedPipe进程间通信2011-06-30 csdn博客 jinjazz本文只是一个测试例子,核心代码是kernel32.dll中的一组windows api函数,这里不深入研究,代码都在codeproject上。http://www.codeproject.com/KB/threads/dotnetnamedpipespart1.aspx测试效果如下,可以做到aspx和给console app发送消息后得到反馈:

console app为服务器端代码如下
using System;using AppModule.InterProcessComm;using AppModule.NamedPipes;using System.Threading;namespace Server{class Program{//**c#中用namedpipe进程间通信//**组件代码来自codeproject//**http://www.codeproject.com/KB/threads/dotnetnamedpipespart1.aspx//**下载上面链接中的代码,编译AppModule.InterProcessComm和AppModule.NamedPipes两个dll//**引用这两个dll到本例中,运行如下代码作为服务器端测试//**测试代码by jinjazz(因为原作者的两个测试程序比较复杂,这里简化后供大家参考)static void Main(string[] args){ServerPipeConnection PipeConnection = new ServerPipeConnection("np-test-by-jinjazz", 512, 512, 5000, false);Console.WriteLine("listening..");while (true){try{PipeConnection.Disconnect();PipeConnection.Connect();string request = PipeConnection.Read();if (!string.IsNullOrEmpty(request)){Console.WriteLine("get:" + request);PipeConnection.Write("get:" + request);if (request.ToLower() == "break") break;}}catch (Exception ex){Console.WriteLine(ex.Message);break;}}PipeConnection.Dispose();Console.Write("press any key to exit..");Console.Read();}}}