热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

第一次做socket的一些心得

理论什么的bilibala的就是自己百度吧推荐一篇不错的关于socket的文章http:www.cnblogs.comsunwayarchive201001291659074.ht

理论什么的bilibala的就是自己百度吧

推荐一篇不错的关于socket的文章

http://www.cnblogs.com/sunway/archive/2010/01/29/1659074.html

其实我也只是刚刚完成了端口监听这一项,其实主要就是获取本地的IP地址

IPAddress myIP;
string ipString = Dns.GetHostEntry(Dns.GetHostName()).AddressList[1].ToString();//获取本机IP地址
myIP = IPAddress.Parse(ipString);

其中有些问题就是AddressList[]的问题,刚开始一直写的是AddressList[0],结果每次取得的都是错误的IP,最后查资料才知道0是IPv6的格式,而1是IPv4的格式,这样才把主要问题给解决了。

最后附上全部代码吧

1 using System;
2 using System.Collections.Generic;
3 using System.ComponentModel;
4 using System.Data;
5 using System.Drawing;
6 using System.Linq;
7 using System.Text;
8 using System.Windows.Forms;
9 using System.Net;
10 using System.Threading;
11 using System.Net.Sockets;
12
13 namespace socket测试WinForm
14 {
15 public partial class Form1 : Form
16 {
17 public Form1()
18 {
19 InitializeComponent();
20 }
21 IPAddress myIP;
22 private void button1_Click(object sender, EventArgs e)
23 {
24 try
25 {
26 IPHostEntry entry = new IPHostEntry();
27 string ipString = Dns.GetHostEntry(Dns.GetHostName()).AddressList[1].ToString();//获取本机IP地址
28 myIP = IPAddress.Parse(ipString);
29 txtState.Text = "";
30 txtState.AppendText("主机开始监听.....\r\n");
31 TcpListener listener = new TcpListener(myIP ,Convert.ToInt32(textBox2.Text));
32 listener.Start();
33 }
34 catch(Exception ez)
35 {
36 MessageBox.Show(ez.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
37 return;
38 }
39 }
40 }
41 }

View Code

有不足的还请大家指正吧


转载于:https://www.cnblogs.com/dranched/p/3740825.html


推荐阅读
author-avatar
智亚康-Scorpio
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有