本文所分享的知识点是【C#获取本机IP搜集整理7种方法】,欢迎您喜欢52ij所分享的新闻、攻略、电脑教程及手机知识等经验,下面是详细的讲解。
C#获取本机IP搜集整理7种方法
①
1 private void GetIP() 2 { 3 string hostName=Dns.GetHostName();//本机名 4 //System.Net.IPAddress[] addressList=Dns.GetHostByName(hostName).AddressList;//会警告GetHostByName()已过期,我运行时且只返回了一个IPv4的地址 5 System.Net.IPAddress[] addressList=Dns.GetHostAddresses(hostName);//会返回所有地址,包括IPv4和IPv6 6 foreach (IPAddress ip in addressList) 7 { 8 listBox1.Items.Add(ip.ToString()); 9 } 10 }
②使用IPHostEntry获取本机局域网地址
1 static string GetLocalIp() 2 { 3 string hostname=Dns.GetHostName();//得到本机名 4 //IPHostEntry localhost=Dns.GetHostByName(hostname);//方法已过期,只得到IPv4的地址 5 <SPAN style="WHITE-SPACE: pre"> </SPAN> IPHostEntry localhost= Dns.GetHostEntry(hostname); 6 IPAddress localaddr=localhost.AddressList[0]; 7 return localaddr.ToString(); 8 }
方法时通过向网站向一些提供IP查询的网站发送webrequest,然后分析返回的数据流
1 string strUrl="提供IP查询的网站的链接"; 2 Uri uri=new Uri(strUrl); 3 WebRequest webreq= WebRequest.Create(uri); 4 Stream s= webreq .GetResponse().GetResponseStream(); 5 StreamReader sr=new StreamReader(s, Encoding.Default); 6 string all= sr.ReadToEnd(); 7 int i=all.IndexOf("[") + 1; 8 //分析字符串得到IP 9 return ip; 10
⑥通过获取CMD里ipconfig命令的结果来得到IP
1 private void GetIP6() 2 { 3 Process cmd=new Process(); 4 cmd.StartInfo.FileName="ipconfig.exe";//设置程序名 5 cmd.StartInfo.Arguments="/all"; //参数 6 //重定向标准输出 7 cmd.StartInfo.RedirectStandardOutput=true; 8 cmd.StartInfo.RedirectStandardInput=true; 9 cmd.StartInfo.UseShellExecute=false; 10 cmd.StartInfo.CreateNoWindow=true;//不显示窗口(控制台程序是黑屏) 11 //cmd.StartInfo.WindowStyle=ProcessWindowStyle.Hidden;//暂时不明白什么意思 12 18 cmd.Start(); 19 string info= cmd.StandardOutput.ReadToEnd(); 20 cmd.WaitForExit(); 21 cmd.Close(); 22 textBox1.AppendText(info); 23 }

⑦NetworkInformation
关于C#获取本机IP搜集整理7种方法的相关讨论如下:
相关问题:C#.NET 如何获得本机IP地址?
答:有几种方法获取本机局域网地址和网络地址。 1、 获取本机局域网地址: 使用IPHostEntry static string GetLocalIp() { string hostname = Dns.GetHostName(); IPHostEntry localhost = Dns.GetHostByName(hostname); IPAddress localaddr = loca... >>详细
相关问题:C#中,如何获得本机IP?
答:获取的方法见代码: protected string GetIP() //获取本地IP { IPHostEntry ipHost = Dns.Resolve(Dns.GetHostName()); IPAddress ipAddr = ipHost.AddressList[0]; return ipAddr.ToString(); } >>详细
相关问题:C#中如何获取本地计算机机名
答:使用使用DNS类的GetHostName方法可以获取本地计算机名 函数简介 命名空间: System.Net组件: System (在 system.dll 中) 语法:public static string GetHostName () 返回值:成功时返回本机名称字符串,失败抛出异常。 实例 using System;usin... >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
