互联网上有很多地方向你展示如何获取IP地址。其中很多看起来像这个例子:
String strHostName = string.Empty;
// Getting Ip address of local machine...
// First get the host name of local machine.
strHostName = Dns.GetHostName();
Console.WriteLine("Local Machine's Host Name: " + strHostName);
// Then using host name, get the IP address list..
IPHostEntry ipEntry = Dns.GetHostEntry(strHostName);
IPAddress[] addr = ipEntry.AddressList;
for (int i = 0; i < addr.Length; i++)
{
Console.WriteLine("IP Address {0}: {1} ", i, addr[i].ToString());
}
Console.ReadLine();
通过这个例子,我可以获得多个IP地址,但我只对获取路由器分配给运行程序的计算机的IP感兴趣:例如,如果某人想要访问我计算机上的共享文件夹,那么我会给他这个IP。
如果我没有连接到网络,并且直接通过调制解调器连接到互联网,则我希望得到一个错误。如何使用C#查看计算机是否连接到网络,如果连接,则获取局域网IP地址。