Код: Выделить всё
public string[] FindAllPorts()
{
List ports = new List();
foreach (ManagementObject obj in FindPorts())
{
try
{
if (obj["Caption"].ToString().Contains("(COM"))
{
string ComName = ParseCommName(obj);
if (ComName != null)
{
ports.Add(ComName);
}
}
}
catch (Exception e)
{
Console.WriteLine(e);
}
}
return ports.ToArray();
}
static ManagementObject[] FindPorts()
{
try
{
ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_PnPEntity");
List objects = new List();
foreach (ManagementObject obj in searcher.Get())
{
objects.Add(obj);
}
return objects.ToArray();
}
catch (Exception e)
{
Console.WriteLine(e);
return new ManagementObject[] { };
}
}
Код: Выделить всё
public List ListPortsByName()
{
List nameList = new List();
foreach (ManagementObject obj in FindPorts())
{
try
{
if (obj["Caption"].ToString().Contains("(COM"))
nameList.Add(obj["Name"].ToString());
}
catch (Exception e)
{
Console.WriteLine(e);
}
}
return nameList;
}
Подробнее здесь: https://stackoverflow.com/questions/787 ... usb-device
Мобильная версия