任何人都知道为什么当我运行此代码
IPHostEntry
IPHost = System.Net.Dns.GetHostEntry(System.Net.Dns.GetHostName());
foreach
(var
ipAddress in
IPHost.AddressList)
{
IPlabel.Content = ipAddress;
}
它以以下格式返回:2001:1:9d39:6 ...?
我希望以IPv4的格式获取它:xxx.xxx.xxx.xxx
不知道他们的帖子是否重复,我已经找了一段时间。我可能没有使用正确的搜索关键字
感谢您可以提供的任何帮助和/或帖子。
最佳答案
我相信这里已经回答了吗?
Getting the ip-address
// return the first IPv4, non-dynamic/link-local, non-loopback address
public static IPAddress GetIPAddress()
{
IPAddress[] hostAddresses = Dns.GetHostAddresses("");
foreach (IPAddress hostAddress in hostAddresses)
{
if (hostAddress.AddressFamily == AddressFamily.InterNetwork &&
!IPAddress.IsLoopback(hostAddress) && // ignore loopback addresses
!hostAddress.ToString().StartsWith("169.254.")) // ignore link-local addresses
return hostAddress;
}
return null; // or IPAddress.None if you prefer
}
关于c# - 获取IP地址WPF和C#显示问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31954192/