项目需求:
因项目需求有变,需将目前系统拆分为单独的两个子系统,分别为图像监控系统,文件识别系统,做成单独DLL,便日后复用。
现针对拆分过程中,遇到C#中对于应用程序跨进程调用的问题,便上网查阅相关资料,觉得有必要记录一下,在此整理一下,便日后学习。
查阅之前,先百度文库了一下一些概念性的知识点,这些后期都会用到,脑子里有个大体印象,且如果你仔细看完,其实百度文库上的已经足够详细,网上有许多不错的教程,简单记录一下,便日后翻阅。
1. 远程对象
远程对象是从MarshalByRefObject类中派生,跨应用程序调用这个类需要使用代理,.net Remoting 支持二中类型的远程对象:知名的(Well-Know)远程对象和客户端对象(Client-actived)远程对象。远程对象包括二层含义:
操作远程对象:对象运行在远程,客户端向它发送消息
传递远程对象:将远程对象拿到本地,或将本地对象发送过去,对副本进行操作。
2. 激活
使用new对象可以激活远程对象
3. 通道
一个远程对象使用通道发送和接受消息,服务器选择一个通道来监听请求,客户端选择通道来和服