这是一个客户端的调用,
同时你又想将它作为服务器方法供其它客户端调用,是吗?
可是你没有注明它的TCP通道吧
同时你又想将它作为服务器方法供其它客户端调用,是吗?
可是你没有注明它的TCP通道吧
解决方案 »
- 如何释放图片数组
- 必须声明标量变量 "@InstrumentId" 错误!!
- winform中怎样动态绑定DataGridView中的combox列,要求用代码实现,不用设计时提供的绑定
- 使用C#注销/关闭计算机
- 正则 The Regulator 问题
- 程序在没有编译环境的win2003中不能运行!这是怎么回事?
- 问个基础问题:方法前加个类的名称有什么作用?
- 喜欢或正在学unity 3D的朋友来报个到吧,大家交个朋友
- 有关以自己填充的datatable作为datagridview的数据源怎么实现combobox问题
- 求一个LigerUI表格从ajax获取数据的实例
- 急待!如何遍历一个xls中的所有sheet?
- 怎样操作xml文件?
如下:
TcpServerChannel channel = new TcpServerChannel(8086);
ChannelServices.RegisterChannel(channel);
RemotingConfiguration.RegisterWellKnownServiceType(typeof(Hello),"Hi",WellKnownObjectMode.SingleCall);
刚才改了一下,运行没有报错
1. Hello类去掉通道注册的语句
2. 将主程序中的TcpServerChannel改为TcpChannel如下:
TcpChannel channel = new TcpChannel(8086);
ChannelServices.RegisterChannel(channel);
RemotingConfiguration.RegisterWellKnownServiceType(typeof(Hello),"Hi",WellKnownObjectMode.SingleCall);dll中Hello类如下:
public class Hello: System.MarshalByRefObject
{public void CallAnoter()
{
(AnotherHello)Activator.GetObject(typeof(AnotherHello),"tcp://localhost:9999/test");
if (obj == null)
{
Console.WriteLine("not create");
return;
}
string str = obj.GetHelloString();
Console.WriteLine(str);
}
}
不过不能是TcpServerChannel,要定义成TcpChannel