C# 识别 Combobox 上打开的应用程序

C# Recognizing Open Applications on Combobox

我正在尝试创建一个基本的宏记录器,它适用于任何打开的应用程序。所以我必须指定我的程序将运行的应用程序。

如何在 visual studio 的组合框工具上识别并 select 打开应用程序?

你可以使用这个:

System.Diagnostics.Process[] procArray;
Dictionary<string,int> applications = new Dictionary<string,int>();
procArray = System.Diagnostics.Process.GetProcesses();
for (int i = 0; i < procArray.Length; i++)
{
     if (procArray[i].MainWindowTitle.Length > 0)
     {
            applications.Add(procArray[i].MainWindowTitle, procArray[i].Id);
     }
}
foreach (KeyValuePair<string, int> app in applications)
{
    comboBox.Items.Add(app.Key);
}

此代码将仅包括已打开 windows 的进程(如果您 运行 选项卡中的任务管理器 "Applications" 您将看到这些应用程序)。进程 ID 可用于获取句柄。