/// <summary> /// Caution: Use the singlton instance unless you know why you need to call this. /// One use is for multiple filters on the same physical device. To apply multiple /// filters open the same physical device multiple times, one for each /// filter by calling this routine and picking the same device out of each list. /// </summary> /// <returns> /// A <see cref="CaptureDeviceList"/> /// </returns> public static CaptureDeviceList New() { var newCaptureDevice = new CaptureDeviceList(); newCaptureDevice.libPcapDeviceList = LibPcap.LibPcapLiveDeviceList.New(); // refresh the device list to flush the original devices and pull the // new ones into the newCaptureDevice newCaptureDevice.Refresh(); return(newCaptureDevice); }
/// <summary> /// Caution: Use the singlton instance unless you know why you need to call this. /// One use is for multiple filters on the same physical device. To apply multiple /// filters open the same physical device multiple times, one for each /// filter by calling this routine and picking the same device out of each list. /// </summary> /// <returns> /// A <see cref="CaptureDeviceList"/> /// </returns> public static CaptureDeviceList New() { var newCaptureDevice = new CaptureDeviceList(); // windows if ((Environment.OSVersion.Platform == PlatformID.Win32NT) || (Environment.OSVersion.Platform == PlatformID.Win32Windows)) { newCaptureDevice.nPcapDeviceList = Npcap.NpcapDeviceList.New(); } else // not windows { newCaptureDevice.libPcapDeviceList = LibPcap.LibPcapLiveDeviceList.New(); } // refresh the device list to flush the original devices and pull the // new ones into the newCaptureDevice newCaptureDevice.Refresh(); return(newCaptureDevice); }