Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah Saya Boleh Dapatkan Senarai Lengkap Aplikasi yang Dipasang dalam C#?

Bagaimanakah Saya Boleh Dapatkan Senarai Lengkap Aplikasi yang Dipasang dalam C#?

Linda Hamilton
Lepaskan: 2025-01-24 23:46:11
asal
799 orang telah melayarinya

How Can I Retrieve a Complete List of Installed Applications in C#?

Dua cara yang cekap untuk menyenaraikan aplikasi yang dipasang di C#

Butiran artikel ini dua kaedah untuk mendapatkan senarai lengkap aplikasi yang dipasang pada sistem Windows menggunakan C#. Kedua -dua pendekatan ini menawarkan kelebihan dan kekurangan, yang membolehkan anda memilih yang paling sesuai untuk keperluan anda.

Kaedah 1: Penghitungan Utama Pendaftaran

Kaedah ini melibatkan secara langsung mengakses pendaftaran Windows. Kunci

mengandungi penyertaan untuk kebanyakan aplikasi yang dipasang. Setiap subkey mewakili aplikasi, dan nilai SOFTWAREMicrosoftWindowsCurrentVersionUninstall memberikan nama aplikasi. DisplayName

Kaedah 2: Memanfaatkan WMI (Instrumentasi Pengurusan Windows)

WMI menawarkan pendekatan yang lebih berstruktur. Dengan menggunakan

dengan pertanyaan ManagementObjectSearcher, anda boleh mengambil koleksi SELECT * FROM Win32_Product contoh, masing -masing mewakili aplikasi yang dipasang. ManagementObject

Contoh kod:

Kaedah pendaftaran:

<code class="language-csharp">string registryKey = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall";
using (Microsoft.Win32.RegistryKey key = Registry.LocalMachine.OpenSubKey(registryKey))
{
    if (key != null) // Add null check for robustness
    {
        foreach (string subkeyName in key.GetSubKeyNames())
        {
            using (RegistryKey subkey = key.OpenSubKey(subkeyName))
            {
                if (subkey != null) // Add null check for robustness
                {
                    object displayName = subkey.GetValue("DisplayName");
                    Console.WriteLine(displayName != null ? displayName.ToString() : "DisplayName not found");
                }
            }
        }
    }
}</code>
Salin selepas log masuk

Kaedah WMI:

<code class="language-csharp">ManagementObjectSearcher mos = new ManagementObjectSearcher("SELECT * FROM Win32_Product");
foreach (ManagementObject mo in mos.Get())
{
    Console.WriteLine(mo["Name"]);
}</code>
Salin selepas log masuk

Perbandingan:

Kaedah pendaftaran biasanya menyediakan senarai yang lebih komprehensif, termasuk kemas kini dan komponen Windows. Walau bagaimanapun, ia boleh menjadi kurang cekap. Kaedah WMI biasanya lebih cepat tetapi mungkin terlepas beberapa aplikasi, terutamanya yang tidak dipasang di bawah profil "Allusers". Pilihan bergantung kepada keperluan khusus anda untuk kesempurnaan dan prestasi. Pertimbangkan untuk menambah pengendalian ralat (seperti yang ditunjukkan dalam contoh pendaftaran yang lebih baik) untuk penyelesaian yang lebih mantap.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Dapatkan Senarai Lengkap Aplikasi yang Dipasang 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan