C# 按IP列出设备?
如何按IP而不是名称列出设备 我知道我可以获得设备名称和描述,但由于我安装了许多设备,如果我可以通过IP获得设备名称和描述,那么选择一个设备会更容易,但是我找不到任何相关选项,因此我想知道是否有一种方法C# 按IP列出设备?,c#,sharppcap,C#,Sharppcap,如何按IP而不是名称列出设备 我知道我可以获得设备名称和描述,但由于我安装了许多设备,如果我可以通过IP获得设备名称和描述,那么选择一个设备会更容易,但是我找不到任何相关选项,因此我想知道是否有一种方法 foreach (var dev in CaptureDeviceList.Instance) { var str = String.Format("{0} {1}", dev.Name, dev.Description); iDeviceDropDown.Items.Add(s
foreach (var dev in CaptureDeviceList.Instance)
{
var str = String.Format("{0} {1}", dev.Name, dev.Description);
iDeviceDropDown.Items.Add(str);
}
我看到有一个类型为
System.Net.NetworkInformation.physicaldaddress
的属性。我认为没有直接的方法从MAC地址获取IP地址,但您可以使用NetworkInterface.GetAllNetworkInterfaces()进行查找代码>更新,找到解决方案:
private void GetDevices()
{
foreach (SharpPcap.LibPcap.LibPcapLiveDevice dev in SharpPcap.LibPcap.LibPcapLiveDeviceList.Instance)
{
for (int i = 0; i < dev.Addresses.Count; i++)
{
var ip = dev.Addresses[i].Addr.ipAddress;
if (ip == null)
continue;
iDeviceDropDown.Items.Add(ip.ToString());
}
}
}
private void GetDevices()
{
foreach(SharpPcap.LibPcap.LibPcapLiveDevice dev中的SharpPcap.LibPcap.LibPcapLiveDeviceList.Instance)
{
for(int i=0;i
实际上,我刚刚在SharpPcap中使用LibPcap找到了解决方案。