在C#.NET 2.0或更高版本中,可以使用Windows API来获取Vista PC上所有已安装应用程序的列表。
以下是一个示例代码,它使用Windows API来获取所有已安装应用程序的列表:
using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
namespace GetInstalledApps
{
class Program
{
static void Main(string[] args)
{
List<string> apps = GetInstalledApplications();
foreach (string app in apps)
{
Console.WriteLine(app);
}
}
public static List<string> GetInstalledApplications()
{
List<string> results = new List<string>();
string registryKey = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall";
Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(registryKey);
if (key != null)
{
string[] subKeyNames = key.GetSubKeyNames();
foreach (string subKeyName in subKeyNames)
{
Microsoft.Win32.RegistryKey subKey = key.OpenSubKey(subKeyName);
string displayName = subKey.GetValue("DisplayName") as string;
if (!string.IsNullOrEmpty(displayName))
{
results.Add(displayName);
}
}
}
return results;
}
}
}
该代码使用Windows API来访问注册表,并从注册表中获取所有已安装应用程序的列表。注册表中的每个键都包含有关已安装应用程序的信息,包括其名称和版本号等。
请注意,该代码只能在Windows操作系统上运行,并且需要管理员权限才能访问注册表。
领取专属 10元无门槛券
手把手带您无忧上云