.NET Remoting:有时返回的对象是空的,有时会出错,因为连接尝试失败,因为连接方没有正确响应

时间:2013-10-27 15:55:46

标签: .net vb.net .net-remoting nic

.NET Remoting(VB 2010)存在问题。 我创建了一个Client / Server应用程序,可以在Local netowrk中正常运行。当我在本地网络外运行客户端时,我得到返回的空对象或错误为“连接尝试失败,因为连接方没有正确响应192.168.5.60:9100”

我在路由器和Windows防火墙上有NAT规则不会阻止任何一方的应用程序。 问题是,从客户端我连接到公共IP,路由器转发到服务器。然后,下次客户端调用服务器的本地IP时,该IP是不同的网络,并且连接失败,从而导致上述错误。 为什么客户端在后续呼叫中连接到服务器的本地IP?有人可以帮助我解决此问题。 我两端都没有任何app.config文件。 编辑:我没有任何防火墙服务器,只需正常设置ROUTER> SERVER(LAN)。

客户代码:

Dim URI as string = " tcp://109.120.24.82:8100/FTObj"
RemotingConfiguration.CustomErrorsMode = CustomErrorsModes.Off
tcpChannel = New Tcp.TcpChannel(9100)
ChannelServices.RegisterChannel(tcpChannel, False)
Dim FTFactoryObj As IFTFactory.IFTFactory = DirectCast(Activator.GetObject(GetType(IFTFactory.IFTFactory), URI), IFTFactory.IFTFactory)
IFTObjC = FTFactoryObj.createFTObj

服务器代码:

 tcpChannel = New Tcp.TcpChannel(9100)
ChannelServices.RegisterChannel(tcpChannel, False)
RemotingConfiguration.RegisterWellKnownServiceType(GetType(FTFactory.FTFactory), FTConfig.ServerAppObject, WellKnownObjectMode.Singleton)

0 个答案:

没有答案