ipc的remoting

远程对象:

using  System;
using  System.Collections.Generic;
using  System.Text;

namespace  Object
{
    
public   class  MyObject : MarshalByRefObject
    {
        
public   int  Add( int  a,  int  b)
        {
            
return  a  +  b;
        }
    } 

}

1、配置文件方式

服务端:
using  System;
using  System.Collections.Generic;
using  System.Text;
using  System.Runtime.Remoting;

namespace  Server
{
    
class  Program
    {
        
static   void  Main( string [] args)
        {
            RemotingConfiguration.Configure(
" Server.exe.config " );
            Console.ReadLine();

        }
    }
}

服务端配置文件:
< configuration >
    
< system .runtime.remoting >
        
< application  name ="RemoteServer" >
            
< service >
                
< wellknown  type ="Object.MyObject,Object"  objectUri ="Object.MyObject"  mode ="Singleton"   />
            
</ service >
            
< channels >
                
< channel  ref ="ipc"  portName ="testPipe"   />
            
</ channels >
        
</ application >
    
</ system.runtime.remoting >
</ configuration >

客户端:
using  System;
using  System.Collections.Generic;
using  System.Text;

namespace  Client
{
    
class  Program
    {
        
static   void  Main( string [] args)
        {
            Object.MyObject app 
=  (Object.MyObject)Activator.GetObject( typeof (Object.MyObject),  " ipc://testPipe/Object.MyObject " );
            Console.WriteLine(app.Add(
1 2 ));
            Console.ReadLine();

        }
    }
}

2、代码方式

服务端:

using  System;
using  System.Collections.Generic;
using  System.Text;
using  System.Runtime.Remoting.Channels.Ipc; 
using  System.Runtime.Remoting.Channels;
using  System.Runtime.Remoting;

namespace  Server
{
    
class  Program
    {
        
static   void  Main( string [] args)
        {
            IpcChannel ipcCh 
=   new  IpcChannel( " testPipe " );
            ChannelServices.RegisterChannel(ipcCh);
            RemotingConfiguration.RegisterWellKnownServiceType
               (
typeof (Object.MyObject),  " Object.MyObject " , WellKnownObjectMode.Singleton);
            Console.ReadLine();

        }
    }
}

客户端和配置文件方式相同
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值