Maison >développement back-end >C++ >Comment récupérer les descriptions de ports série en C# ?

Comment récupérer les descriptions de ports série en C# ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-29 10:48:021087parcourir

How to Retrieve Serial Port Descriptions in C#?

Récupération des descriptions de ports série

Le code fourni charge efficacement les noms de ports série dans une liste déroulante. Pour améliorer cette fonctionnalité, il est souhaitable d'acquérir les descriptions de ports correspondantes. Cet article présente une approche pour obtenir de telles descriptions à l'aide de la classe ManagementObjectSearcher dans l'espace de noms Microsoft.Management.

<code class="c#">using Microsoft.Management;

...

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>

Le code ci-dessus :

  • Crée un ManagementObjectSearcher pour interroger toutes les entités PnP. dont les légendes contiennent "(COM".
  • Obtient un tableau de noms de ports à l'aide de SerialPort.GetPortNames().
  • Mappe les noms de ports sur leurs légendes correspondantes à l'aide du moteur de recherche.
  • Formate les noms de ports et les légendes dans le format souhaité.
  • Affiche la liste étendue avec les descriptions de ports.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn