我用的是TCP协议,在局域网内访问没任何问题,但在外网就访问不了,但是用telnet命令内查看外网的IP和Remoting服务端的端口又是通的这是什么原因呢? 请高手指点
解决方案 »
- 求高手帮忙分析下代码。我想根据Modbus03功能码代码修改出01功能码代码,求高手给个思路,感激不尽!!(串口/Modbus~RTU,WINFORM)
- 实例化了一个DataGridView对象(不是控件),为什么不能关联DataTable对象
- 关于自动二叉树生成树的问题(急在线等!)
- 求助,
- LinkButton的事件问题
- 利用VS2005部署应用程序时出现的问题
- 怎样在C#中定义一个数组的类型,以保存一组color的值?
- 請教大蝦們﹐誰有c#的幫助文件﹖﹖﹖
- axMediaPlayer控件怎么用
- .Net Core 2.1控制台程序作为Linux守护进程(服务)不能后台常驻
- path.gettemppath的小问题(100分)
- Func<T, TResult>(T arg)如何使用?
System.ArgumentNullException: ?????? DispatchChannelSink ???????????????????????????????????????
?????????: requestMsg
??? System.Runtime.Remoting.Channels.DispatchChannelSink.ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, IMessage& responseMsg, ITransportHeaders& responseHeaders, Stream& responseStream)
??? System.Runtime.Remoting.Channels.BinaryServerFormatterSink.ProcessMessage(IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream, IMessage& responseMsg, ITransportHeaders& responseHeaders, Stream& responseStream)
??? System.Runtime.Remoting.Channels.Http.HttpServerTransportSink.ServiceRequest(Object state)
??? System.Runtime.Remoting.Channels.SocketHandler.ProcessRequestNow()
这是什么原因???
********************************************************
BinaryServerFormatterSinkProvider serverProv = new BinaryServerFormatterSinkProvider();
serverProv.TypeFilterLevel = System.Runtime.Serialization.Formatters.TypeFilterLevel.Full;
BinaryClientFormatterSinkProvider clientProv = new BinaryClientFormatterSinkProvider();
IDictionary props = new Hashtable();
props["port"] = Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["Port"]);
HttpChannel httpChannel = new HttpChannel(props, clientProv, serverProv);
ChannelServices.RegisterChannel(httpChannel, false);
RemotingConfiguration.RegisterWellKnownServiceType(typeof(Remote), "Server", WellKnownObjectMode.Singleton);
RemotingConfiguration.CustomErrorsMode = CustomErrorsModes.Off;
**********************************************************
改成这样就没有异常问题:
********************************************************
HttpChannel httpChannel = new HttpChannel(Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["Port"]));
System.Runtime.Remoting.Channels.ChannelServices.RegisterChannel(httpChannel, false);
RemotingConfiguration.RegisterWellKnownServiceType(typeof(Remote), "Server", WellKnownObjectMode.Singleton);
RemotingConfiguration.CustomErrorsMode = CustomErrorsModes.Off;
*********************************************************
但是安全级别有出问题了
看下 防火墙中的remoting 是不是被禁用了