TcpClient 错误"不能做任何连接,因为目标机器积极地拒绝它" 的解决
TcpClient 错误"不能做任何连接,因为目标机器积极地拒绝它" 的解决
//为了使客户端可以使用localhost/127.0.0.1/192.168.1.2等多种情况,
//应该使用IPAddress.Any,而不是指定一个ip,以下是msdn的说明
//msdn
//此构造函数允许指定本地 IP 地址和用于侦听传入的连接尝试的端口号。在调用该构造函数之前,必须首先使用所需的本//地地址创建 IPAddress。将此IPAddress 作为 localaddr参数传递给构造函数。如果您不介意分配哪个本地地址,//请将 localaddr 参数指定为 IPAddress.Any,这样基础服务提供程序将分配最适合的网络地址。如果您有多个网络接//口,这将有助于简化您的应用程序。如果您不介意使用哪个本地端口,可以指定0 作为端口号。在这种情况下,服务提供//程序将分配一个介于 1024 和 5000 之间的可用端口号。如果使用这种方法,则可以使用 LocalEndpoint属性发现所//分配的本地网络地址和端口号。
//以下是服务器端的程序
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Net;
using System.Net.Sockets;
using System.Threading;
namespace TcpReceive
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
Thread thread = new Thread(new ThreadStart(MyListen));
thread.Start();
}
public void MyListen()
{
IPAddress localAddr = IPAddress.Parse("192.168.1.2");
Int32 port = 2112;
TcpListener tcpListen = new TcpListener(IPAddress.Any,port);
tcpListen.Start();
while (true)
{
TcpClient tcpClient = tcpListen.AcceptTcpClient();
NetworkStream ns = tcpClient.GetStream();
StreamReader sr = new StreamReader(ns);
string res = sr.ReadToEnd();
Invoke(new UpdateDisplayDelegate(UpdateDisplay), new object[] { res });
}
//tcpClient.Close();
//tcpListen.Stop();
}
public void UpdateDisplay(string text)
{
this.textBox1.Text += text;
}
protected delegate void UpdateDisplayDelegate(string Text);
}
}
//以下是客户端程序
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.IO;
using System.Net.Sockets;
namespace TcpSend
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
TcpClient tcpClient = new TcpClient(this.textBox1.Text,int.Parse(this.textBox2.Text));
NetworkStream ns = tcpClient.GetStream();
FileStream fs = File.Open("d:\\123.txt",FileMode.Open);
int data = fs.ReadByte();
while (data != -1)
{
ns.WriteByte((byte)data);
data=fs.ReadByte();
}
fs.Close();
ns.Close();
tcpClient.Close();
}
}
}
TcpClient 错误"不能做任何连接,因为目标机器积极地拒绝它" 的解决的更多相关文章
- Socket 连接"由于目标机器积极拒绝,无法连接" 的诊断
1.如果是采用TCP/udp协议进行连接,检查windows防火墙是否开放相应SocketTCP/udp端口; 简单的检测方法是关闭windows防火墙后再试;2.如果服务器端和客户端均在本机上运 ...
- SVN 无法连接主机:由于目标计算机积极拒绝,无法连接
问题:使用追溯功能时因为时间太长,所以强行关闭了SVN;当再次连接的时候就发现不能连接到SVN了,错误消息: 无法连接主机:由于目标计算机积极拒绝,无法连接 解决:重启一下服务器的SVN 服务就可以了
- IM推送保障及网络优化详解(二):如何做长连接加推送组合方案
对于移动APP来说,IM功能正变得越来越重要,它能够创建起人与人之间的连接.社交类产品中,用户与用户之间的沟通可以产生出更好的用户粘性. 在复杂的 Android 生态环境下,多种因素都会造成消息推送 ...
- 【转】SVN提示:由于目标机器积极拒绝,无法连接 的解决方法
转载地址:http://wxiaolei.blog.163.com/blog/static/1038760120133108180596/ 安装完TSVN之后,checkout时报错,并且后来在cmd ...
- 在有跳板机的情况下,SecureCRT自动连接到目标服务器
为了服务器的安全,运维人员经常会要求我们先登录到跳板机,然后再SSH连接到目标服务器.但是这样是很繁琐的,每次在SecureCRT创建一个连接,都需要输入SSH命令,然后输入密码. 下面的方法可以实现 ...
- sqlserver2005重新安装(安装汇编错误,安装程序无法连接到数据库服务进行服务配置)
2014-01-09 16:41 1687人阅读 评论(1) 收藏 举报 分类: 数据库(1) 版权声明:本文为博主原创文章,未经博主允许不得转载. sqlserver2005重新安装(安装汇编错误, ...
- Reporting Service 2008 “报表服务器数据库内出错。此错误可能是因连接失败、超时或数据库中磁盘空间不足而导致的”
今天遇到了两个关于Reporting Service的问题, 出现问题的环境为Microsoft SQL Server 2008 R2 (SP2) - 10.50.4000.0 (X64) .具体情况 ...
- SRC是在本位置显示:source的缩写,源的意思 HREF是点击后连接的目标:HyperlinkReference,超链接引用
SRC是在本位置显示:source的缩写,源的意思HREF是点击后连接的目标:HyperlinkReference,超链接引用
- sql server 2008启动时:已成功与服务器建立连接,但是在登录过程中发生错误。(provider:命名管道提供程序,error:0-管道的另一端上无任何进程。)(Microsoft SQL Server,错误:233) 然后再连接:错误:18456
问题:sql server 2008启动时:已成功与服务器建立连接,但是在登录过程中发生错误.(provider:命名管道提供程序,error:0-管道的另一端上无任何进程.)(Microsoft S ...
随机推荐
- 开源项目:网页实时通信WebRTC
参考资料 [博客系列] Android WebRTC 音视频开发总结 [环境编译] WebRTC入门指南 各平台WebRTC源码网盘下载 Ubuntu14.04编译WebRTC For Android ...
- C++中的位运算总结
1)位运算 位运算是指对转换成二进制的数字进行每一位上的0.1的运算,运算涉及到五种运算:与(&),或(|),异或(^),左移(<<),右移(>>). 如下表所示: ...
- 打造一个自动检测页面是否存在XSS的小插件
前言: 还记得刚玩Web安全时,就想着要是能有一个自动挖掘XSS漏洞的软件就好了.然后我发现了Safe3.JSky.AWVS.Netsparker等等,但是误报太多,而且特别占内存.后来发现了fidd ...
- 3D模型文件读写.Net SDK
AnyCAD .Net/C++ SDK支持多种3D/2D文件格式,比如BREP.STEP.IGES.STL.DXF.3DS.OBJ.FBX.SKP.IFC.DAE……等,根据使用场景提供不同的API. ...
- 乐够GO应用源码完整版
乐够GO应用源码完整版 V1.0,系统2.3以上使用,需要联网,每天定时更新数据,实现了对文章赞的功能,以及常用的评论功能,还有生活的职业的相关功能,如查找功能,分类的分类等功能,具体大家可以看看应用 ...
- C++ 三种工厂模式
工厂模式是将带有继承于基类的子类的创建过程交于一个工厂来创建,通过赋予不同的创建标识来创建不同的子类. 基于自己的理解和使用这里巩固一下工厂模式. 我们的项目目前使用最多的是简单工厂模式,不过其他两种 ...
- 改变tabbar的高度做法
UITabBarController *tabBarController =[[UITabBarController alloc] init]; CGRect frame = self.window. ...
- Knockout.Js官网学习(简介)
前言 最近一段时间在网上经常看到关于Knockout.js文章,于是自己就到官网看了下,不过是英文的,自己果断搞不来,借用google翻译了一下.然后刚刚发现在建立asp.net mvc4.0的应用程 ...
- 原生jdbc执行存储过程
//定时任务,结转 . //表名 fys_sch_lvyou2 ,存储过程名:fys_sch_lvyou2_carrayover //无参调用:{call insertLine} //有参调用:{ca ...
- 瀑布流ListView
前言 终于忙完了一段时间,现在前段时间写的一个瀑布流ListView到想法分享下,这个东西是扩展自Listview,当列表内容拉到最后后触发刷新操作,以便抓取更多到数据. 先贴下整个代码,先有个整体到 ...