Bagaimanakah saya Mendapatkan Perihalan Port Bersiri dalam C#?

DDD
Lepaskan: 2024-10-31 10:26:28
asal
996 orang telah melayarinya

How Do I Retrieve Serial Port Descriptions in C#?

Mendapatkan Butiran Port Bersiri

Kod yang disediakan berjaya menghitung port COM, tetapi ia tidak mempunyai fungsi untuk mendapatkan perihalan port seperti yang boleh dilihat dalam Pengurus Peranti. Untuk penyelesaian yang komprehensif, pendekatan berikut disyorkan:

<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>
Salin selepas log masuk

Kod di atas menggunakan Instrumen Pengurusan Windows (WMI) untuk mengumpulkan maklumat terperinci tentang setiap port bersiri. ManagementObjectSearcher dikonfigurasikan untuk membuat pertanyaan untuk maklumat port COM tertentu.

Kaedah SerialPort.GetPortNames() mengembalikan tatasusunan nama port. Nama-nama ini kemudiannya digunakan untuk menapis pertanyaan WMI dan mendapatkan semula perihalan port yang sepadan.

Senarai portList yang terhasil mengandungi gabungan nama port dan perihalan. Dengan mengulangi senarai ini, anda boleh memaparkan maklumat seperti yang dikehendaki, contohnya, dalam kotak kombo untuk memberikan pengguna senarai deskriptif port bersiri yang tersedia.

Atas ialah kandungan terperinci Bagaimanakah saya Mendapatkan Perihalan Port Bersiri dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!