C#编程如何获取某台机器的IP地址?
1个回答
展开全部
////////////////////////////////////////////////////////////////////
// getip2.cs//
// 本程序报告本机上每一块网卡的IP地址
// 命令行编译命令为:
// csc getip2.cs
// 请一定要在VS 7和.NET的环境变量中正确指定LIB库的路径;可以运行
// vsvars32.bat//
using System;
using System.Net; // network stuff
using System.Collections; // array iterator
//////////////////
// standard C# application class//
class MainApp {
// 应用程序入口点
public static void Main() {
// 显示主机名
string hostname = Dns.GetHostName();
Console.WriteLine(hostname = {0}, hostname);
// 显示每个IP地址
IPHostEntry hostent = Dns.GetHostByName(hostname); // 主机信息
Array addrs = hostent.AddressList; // IP地址数组
IEnumerator it = addrs.GetEnumerator(); // 迭代器
while(it.MoveNext()) { // 循环到下一个IP 地址
Console.WriteLine(Address: {0}, ip); // 显示 IP地址}}};与C/C++代码相比,C#代码简单了许多。Dns 包装了相应的winsock函数和结构。用Dns.GetHostName 获取主机名,用Dns.GetHostByName 的到一个IPHostEntry 对象。.NET 类隐藏了初始化和终止,隐藏了别扭的hostent 结构,在数组中打包地址并不用你去操心IP地址的格式化问题。getip2 仅用了19 行C#代码,而相应的C/C+代码有50多行。
Storm代理
2023-07-25 广告
2023-07-25 广告
StormProxies是一家国内优质海外HTTP代理商,拥有一个庞大的IP资源池,覆盖200多个地区,IP数量大且匿名度高。其优点还包括超高并发、稳定高效、技术服务等特点,同时提供HTTP、HTTPS以及SOCKS5协议支持。此外,Sto...
点击进入详情页
本回答由Storm代理提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询