>  기사  >  백엔드 개발  >  C#에서 직렬 포트 설명을 어떻게 검색합니까?

C#에서 직렬 포트 설명을 어떻게 검색합니까?

DDD
DDD원래의
2024-10-31 10:26:28997검색

How Do I Retrieve Serial Port Descriptions in C#?

직렬 포트 세부 정보 검색

제공된 코드는 COM 포트를 성공적으로 열거하지만 장치 관리자에 표시되는 것과 같은 포트 설명을 검색하는 기능이 부족합니다. 포괄적인 솔루션을 위해서는 다음 접근 방식이 권장됩니다.

<code class="csharp">using (var searcher = new ManagementObjectSearcher("SELECT * FROM Win32_PnPEntity WHERE Caption like '%(COM%'"))
{
    var portnames = SerialPort.GetPortNames();
    var ports = searcher.Get().Cast<ManagementBaseObject>().ToList().Select(p => p["Caption"].ToString());

    var portList = portnames.Select(n => n + " - " + ports.FirstOrDefault(s => s.Contains(n))).ToList();

    foreach (string s in portList)
    {
        Console.WriteLine(s);
    }
}</code>

위 코드는 WMI(Windows Management Instrumentation)를 활용하여 각 직렬 포트에 대한 자세한 정보를 수집합니다. ManagementObjectSearcher는 특정 COM 포트 정보를 쿼리하도록 구성됩니다.

SerialPort.GetPortNames() 메서드는 포트 이름 배열을 반환합니다. 그런 다음 이러한 이름은 WMI 쿼리를 필터링하고 해당 포트 설명을 검색하는 데 사용됩니다.

결과 목록 portList에는 포트 이름과 설명의 조합이 포함됩니다. 이 목록을 반복하면 원하는 대로 정보를 표시할 수 있습니다. 예를 들어 콤보 상자에 사용 가능한 직렬 포트에 대한 설명 목록을 사용자에게 제공할 수 있습니다.

위 내용은 C#에서 직렬 포트 설명을 어떻게 검색합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.