由于目标计算机积极拒绝,无法连接

时间:2023-01-09 12:22:54
用C#sockets编一个类似QQ聊天程序,主要功能是聊天和传文件。结果聊天正常但是传输文件时提示:由于目标计算机积极拒绝,无法连接。错误提示:
system.Net.Sockets.SocketException (0x80004005): 由于目标计算机积极拒绝,无法连接。 222.20.55.65:501   在 System.Windows.Forms.Control.MarshaledInvoke(Control caller, Delegate method, Object[] args, Boolean synchronous)   在 System.Windows.Forms.Control.Invoke(Delegate method, Object[] args)   在 WinClient.Form1.ReceiveMessage(IAsyncResult ar)

22 个解决方案

#1


端口501没有侦听

#2


或者如果是win7以上,看看501加入防火墙白名单了吗

#3


聊天正常,说明端口开了。要么就是上传文件过大造成的。

#4


传文件是什么模式, 传文件和聊天是不是同一个连接??

#5


引用 1 楼 Z65443344 的回复:
端口501没有侦听

我用了两个端口,500用于发送消息,501用于发送文件,之前只侦听了500端口,按你说的我加了一个侦听501端口,虽然现在非服务器主机的客户端向服务器所在主机的客户端发送没有之前的错误了,但是反过来仍会报错。最要的是不管是哪种情况接收客户端总会死机

#6


引用 4 楼 bafzxzh 的回复:
传文件是什么模式, 传文件和聊天是不是同一个连接??

都用的是tcp连接

#7


由于目标计算机积极拒绝,无法连接

#8


就是没有开启连接...

先telnet下 看看能不能连接.

#9


引用 8 楼 diaodiaop 的回复:
就是没有开启连接...

先telnet下 看看能不能连接.

telnet 500可以 但是telnet501 果然是不能连接 如何打开连接

#10


你服务器上的程序(服务)启动了吗?

#11


引用 10 楼 diaodiaop 的回复:
你服务器上的程序(服务)启动了吗?

方便留个QQ什么的吗 我把源程序发给你帮我看一下吧 谢谢了~

#12


你看看服务器端传文件连接的监听是否开启成功

#13


引用 12 楼 bafzxzh 的回复:
你看看服务器端传文件连接的监听是否开启成功

客户端之间的文件传输连接需要通过服务器吗?

#14


客户端之间如果需要连接,或者服务器能够向客户端主动发起连接,那么客户端也要开侦听
还有,侦听500和侦听501应该分别开一个线程执行,否则卡死.

#15


或者侦听的时候,500和501都用同一个线程侦听
但是侦听到有连接之后,要给文件传输单独开一个线程去接收
传文件不像传一句话那么快,会让线程很忙碌的

#16


引用 15 楼 Z65443344 的回复:
或者侦听的时候,500和501都用同一个线程侦听
但是侦听到有连接之后,要给文件传输单独开一个线程去接收
传文件不像传一句话那么快,会让线程很忙碌的

我才刚接触这个 很多方面还不是很懂 我可以发给你你帮我看看吗?

#17


另外,局域网的聊天软件,根本不需要服务端
发消息就UDP,可以广播组播
传文件就TCP

#18


该回复于2014-08-30 09:26:02被管理员删除

#19


该回复于2014-08-30 09:15:46被管理员删除

#20


该回复于2014-08-30 09:15:46被管理员删除

#21


由于目标计算机积极拒绝,无法连接

#22


楼主,我也遇到了你的这个问题,请问一下你是怎么解决的?谢谢~

#1


端口501没有侦听

#2


或者如果是win7以上,看看501加入防火墙白名单了吗

#3


聊天正常,说明端口开了。要么就是上传文件过大造成的。

#4


传文件是什么模式, 传文件和聊天是不是同一个连接??

#5


引用 1 楼 Z65443344 的回复:
端口501没有侦听

我用了两个端口,500用于发送消息,501用于发送文件,之前只侦听了500端口,按你说的我加了一个侦听501端口,虽然现在非服务器主机的客户端向服务器所在主机的客户端发送没有之前的错误了,但是反过来仍会报错。最要的是不管是哪种情况接收客户端总会死机

#6


引用 4 楼 bafzxzh 的回复:
传文件是什么模式, 传文件和聊天是不是同一个连接??

都用的是tcp连接

#7


由于目标计算机积极拒绝,无法连接

#8


就是没有开启连接...

先telnet下 看看能不能连接.

#9


引用 8 楼 diaodiaop 的回复:
就是没有开启连接...

先telnet下 看看能不能连接.

telnet 500可以 但是telnet501 果然是不能连接 如何打开连接

#10


你服务器上的程序(服务)启动了吗?

#11


引用 10 楼 diaodiaop 的回复:
你服务器上的程序(服务)启动了吗?

方便留个QQ什么的吗 我把源程序发给你帮我看一下吧 谢谢了~

#12


你看看服务器端传文件连接的监听是否开启成功

#13


引用 12 楼 bafzxzh 的回复:
你看看服务器端传文件连接的监听是否开启成功

客户端之间的文件传输连接需要通过服务器吗?

#14


客户端之间如果需要连接,或者服务器能够向客户端主动发起连接,那么客户端也要开侦听
还有,侦听500和侦听501应该分别开一个线程执行,否则卡死.

#15


或者侦听的时候,500和501都用同一个线程侦听
但是侦听到有连接之后,要给文件传输单独开一个线程去接收
传文件不像传一句话那么快,会让线程很忙碌的

#16


引用 15 楼 Z65443344 的回复:
或者侦听的时候,500和501都用同一个线程侦听
但是侦听到有连接之后,要给文件传输单独开一个线程去接收
传文件不像传一句话那么快,会让线程很忙碌的

我才刚接触这个 很多方面还不是很懂 我可以发给你你帮我看看吗?

#17


另外,局域网的聊天软件,根本不需要服务端
发消息就UDP,可以广播组播
传文件就TCP

#18


该回复于2014-08-30 09:26:02被管理员删除

#19


该回复于2014-08-30 09:15:46被管理员删除

#20


该回复于2014-08-30 09:15:46被管理员删除

#21


由于目标计算机积极拒绝,无法连接

#22


楼主,我也遇到了你的这个问题,请问一下你是怎么解决的?谢谢~