C# обеспечивает эффективное средство сканирования доступных COM-портов? Я хотел бы иметь выпадающий список в своем приложении, где пользователь может выбрать один из обнаруженных COM-портов. Создание и заполнение выпадающего списка не являются проблемой. Я просто должен знать, как просканировать для доступных COM-портов с помощью C#. Я использую Microsoft Visual C# 2008 Express Edition.Спасибо.
System.IO.Ports - это пространство имен, которое вам нужно.
SerialPort.GetPortNames перечислит все последовательные COM-порты.
К сожалению, параллельные порты не поддерживаются непосредственно из C #, так как они используются очень редко, за исключением устаревших ситуаций. Тем не менее, вы можете перечислить их, запросив следующий раздел реестра:
HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\PARALLEL PORTS
Подробные сведения см. В пространстве имен Microsoft.Win32 .
Используйте WMI через пространство имен System.Management. Быстрый поиск Google находит этот код:
using System;
using System.Management;
public class Foo
{
public static void Main()
{
var instances = new ManagementClass("Win32_SerialPort").GetInstances();
foreach ( ManagementObject port in instances )
{
Console.WriteLine("{0}: {1}", port["deviceid"], port["name"]);
}
}