> 백엔드 개발 > C++ > C#에서 설치된 애플리케이션 목록을 어떻게 검색할 수 있나요?

C#에서 설치된 애플리케이션 목록을 어떻게 검색할 수 있나요?

Barbara Streisand
풀어 주다: 2025-01-24 23:52:10
원래의
352명이 탐색했습니다.

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

C#을 사용하여 시스템에 설치된 애플리케이션 가져오기

질문:

C# 코드를 사용하여 시스템에 설치된 애플리케이션을 확인하는 방법은 무엇입니까?

해결책:

C#을 사용하여 시스템에 설치된 애플리케이션 목록을 얻으려면 레지스트리 또는 WMI(Windows Management Instrumentation)를 사용할 수 있습니다.

레지스트리 기반 방법:

"SOFTWAREMicrosoftWindowsCurrentVersionUninstall" 레지스트리 키를 반복하면 설치된 애플리케이션의 전체 목록을 제공할 수 있습니다. 각 하위 키는 서로 다른 응용 프로그램을 나타내며 "DisplayName" 값에는 응용 프로그램의 이름이 포함됩니다.

WMI 방법:

느리지만 실행 가능한 대안은 ManagementObjectSearcher 개체를 통해 WMI를 사용하는 것입니다. "SELECT * FROM Win32_Product" 쿼리는 설치된 프로그램 목록을 검색합니다. 각 ManagementObject의 "Name" 속성은 애플리케이션의 이름을 나타냅니다.

코드 조각:

레지스트리 기준:

<code class="language-csharp">string registry_key = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall";
using (Microsoft.Win32.RegistryKey key = Registry.LocalMachine.OpenSubKey(registry_key))
{
    foreach (string subkey_name in key.GetSubKeyNames())
    {
        using (RegistryKey subkey = key.OpenSubKey(subkey_name))
        {
            Console.WriteLine(subkey.GetValue("DisplayName"));
        }
    }
}</code>
로그인 후 복사

WMI 기준:

<code class="language-csharp">ManagementObjectSearcher mos = new ManagementObjectSearcher("SELECT * FROM Win32_Product");
foreach (ManagementObject mo in mos.Get())
{
    Console.WriteLine(mo["Name"]);
}</code>
로그인 후 복사

참고:

레지스트리 기반 방법으로 Windows 업데이트 및 구성 요소를 캡처할 수도 있습니다. WMI는 느리기는 하지만 모든 사용자에게 설치된 응용 프로그램이 누락될 수 있습니다. 필요에 따라 적절한 방법을 선택할 수 있습니다.

위 내용은 C#에서 설치된 애플리케이션 목록을 어떻게 검색할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿