socket 连接服务器问题
请高手帮我分析下面的代码是否有错private void button1_Click(object sender, System.EventArgs e)
{
// 服务器IP地址
IPAddress serIP;
// 服务器节点
IPEndPoint server;
// 客户端Socket
Socket client;
// 客户端网络数据流
NetworkStream stream;
// 客户端写数据流
TextWriter writer;
// 客户端读数据流
TextReader reader;
serIP = IPAddress.Parse("127.0.0.1");
server = new IPEndPoint(serIP,35525);
client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
client.Connect(server);
if(client.Connected)
{
stream = new NetworkStream(client);
writer = new StreamWriter(stream);
reader = new StreamReader(stream);
richTextBox1.Text += "连接到服务器...\n";
richTextBox1.Text += reader.ReadLine();
richTextBox1.Text += reader.ReadLine();
richTextBox1.Text += "\n";
writer.WriteLine("你好,服务器,很高兴能和你通讯,谢谢。");
writer.Flush();
reader.Close();
writer.Close();
stream.Close();
client.Close();
}
}
我用的是windows 2003,可是我检测的时候却没有什么反应,不知是什么原因 --------------------编程问答-------------------- 现在是提示"由于目标机器积极拒绝,无法连接" 的错误 --------------------编程问答-------------------- 我如果server端口号改为我的iis 端口号的时候没有错误提示,可是也没有什么反应 --------------------编程问答-------------------- 你这是客户端的代码,服务器端的程序启动了吗? --------------------编程问答-------------------- 服务器没有打开那个端口.. --------------------编程问答-------------------- 由于目标机器积极拒绝,无法连接
就是说,你连接的那个端口没有在监听~ --------------------编程问答-------------------- 你缺少端口哦。。。你的连接端开启连接呢
但是你的被连接端呢?没开启端口
当你尝试连接后 自然说 积极拒绝 --------------------编程问答-------------------- 你要在你的 被连接端 也做一个C#程序 负责监听某个端口
用TcpListener
TcpListener listener = new TcpListener(6000); //这里默认设置监听端口为6000
//建立Socket对象,用于获得TcpListener
Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
bool state = true; //设置监听状态
while(state)
{
listener.start(); //开启监听
while(state)
{
socket = listener.A.. //... 后面的我忘了 呵呵 反正就是这样的
}
}
以上是我在这里手写的,难免有小小的手误,请见谅
补充:.NET技术 , C#