Heim >Backend-Entwicklung >C++ >Wie rufe ich Beschreibungen serieller Ports in C# ab?

Wie rufe ich Beschreibungen serieller Ports in C# ab?

Susan Sarandon
Susan SarandonOriginal
2024-10-29 10:48:021083Durchsuche

How to Retrieve Serial Port Descriptions in C#?

Beschreibungen serieller Ports abrufen

Der bereitgestellte Code lädt die Namen serieller Ports effektiv in ein Kombinationsfeld. Um diese Funktionalität zu erweitern, ist der Erwerb der entsprechenden Portbeschreibungen wünschenswert. In diesem Artikel wird ein Ansatz zum Abrufen solcher Beschreibungen mithilfe der ManagementObjectSearcher-Klasse im Microsoft.Management-Namespace vorgestellt.

<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>

Der obige Code:

  • Erstellt einen ManagementObjectSearcher zur Abfrage aller PnP-Entitäten deren Beschriftungen „(COM“ enthalten.
  • Erhält ein Array von Portnamen mit SerialPort.GetPortNames().
  • Ordnet die Portnamen mithilfe des Suchers den entsprechenden Beschriftungen zu.
  • Formatiert die Portnamen und Beschriftungen im gewünschten Format.
  • Zeigt die erweiterte Liste mit Portbeschreibungen an.

Das obige ist der detaillierte Inhalt vonWie rufe ich Beschreibungen serieller Ports in C# ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn