.Net中的IPC可以使用以下方法实现:
世界足球联合会使用命名管道 需要.Net 3.0 及更高版本。
代码示例- WCF类 NetNamedPipeBinding 可以用于同一台机器上的进程间通信。此类的MSDN文档包括涵盖此方案的代码示例http://msdn.microsoft.com/zh-cn/library/system.servicemodel.netnamedpipebinding.aspx
远程处理
.Net 1.0发布的原始IPC框架。我相信远程处理将不再得到积极发展,建议您改用WCF。
代码示例通过远程处理进行进程间通信
-使用TCP通道
- GenuineChannels,出售包含共享内存通道的远程处理工具包。http://www.genuinechannels.com/Index.aspx
- Ingo Rammer撰写了权威的.Net远程处理书《Advanced .NET Remoting,第二版》
使用csharptest-net RpcLibrary的Win32 RPC
我最近遇到一个项目,该项目包装了Win32 RPC库,并创建了一个.net类库,该库可用于本地和远程RPC。
项目主页 :http :
//csharptest.net/projects/rpclibrary/
MSDN参考:
- RPC的工作方式:http://technet.microsoft.com/zh-cn/library/cc738291( v = ws.10).aspx
- RPC功能:http : //msdn.microsoft.com/zh-cn/library/aa378623(v=VS.85).aspx
还有一个在库顶部运行的google协议缓冲区rpc客户端:https : //pre.google.com/p/protobuf-csharp-
rpc/
WM_COPYDATA
为了完整起见,还可以将WIN32方法与WM_COPYDATA消息一起使用。在.Net
1.1中,我之前曾使用过此方法来创建一个单实例应用程序,该应用程序从Windows资源管理器中打开多个文件。
- MSDN-WM_COPYDATA
- 代码示例
- PInvoke.net声明
使用自定义协议(较难)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)