获取正在运行的当前APPLICATIONS列表,而不是处理C# - c#

我知道您可以使用Process[] processes = Process.GetProcesses();Process[] processes = Process.GetProcessesByName("processName");来获取当前正在运行的进程的列表。

但是,我需要获取正在运行的当前应用程序,而不一定是特定的进程。原因是因为有时某些后台运行的进程与某个应用程序相关,但是实际的应用程序本身并未运行。但是出于我的目的,我需要知道实际的应用程序本身是否正在运行。

有没有办法在C#中做到这一点?

编辑:显然我还没有说清楚。例如,在任务管理器中,您可以看到当前正在运行的应用程序列表以及当前正在运行的进程列表。我正在尝试获取任务管理器中可以看到的应用程序列表,而不是大量的进程列表

参考方案

获取进程列表,然后按具有MainWindowHandle的进程进行过滤。

仅当流程具有图形界面时,流程才具有与之关联的主窗口。如果关联的进程没有主窗口,则MainWindowHandle值为零。对于已隐藏的进程,即在任务栏中不可见的进程,该值也为零。对于在任务栏最右侧的通知区域中显示为图标的进程,可能是这种情况。

如果它有一个主窗口,就任务管理器而言,它是一个“应用程序”。

var processes = Process.GetProcesses()
    .Where(p=> p.MainWindowHandle != 0)
    .ToArray();

如何在Gulp中使用stdout和stderr child_process - python

我将gulp与python flask一起使用。var gulp = require('gulp'); var spawn = require('child_process').spawn; var app = spawn('python', ['app.py']); gulp.…

当回复有时是一个对象有时是一个数组时,如何在使用改造时解析JSON回复? - java

我正在使用Retrofit来获取JSON答复。这是我实施的一部分-@GET("/api/report/list") Observable<Bills> listBill(@Query("employee_id") String employeeID); 而条例草案类是-public static class…

改造正在返回一个空的响应主体 - java

我正在尝试使用Retrofit和Gson解析一些JSON。但是,我得到的响应机构是空的。当我尝试从对象中打印信息时,出现NullPointerException。我确保URL正确,并且我也确保POJO也正确。我正在使用jsonschema2pojo来帮助创建POJO类。这是我要解析的JSON{ "?xml": { "@versi…

每个文件合并后添加换行 - python

我有很多类似以下内容的JSON文件:例如。1.json{"name": "one", "description": "testDescription...", "comment": ""} test.json{"name"…

为应用程序池“ xxx”提供服务的进程与Windows Process Activation Service发生致命通信错误 - c#

在软件更新之后,收到多个此类错误后,应用程序池停止了两次:为应用程序池“ xxx”提供服务的进程在Windows进程激活服务中遇到致命的通信错误。进程ID为“ yyy”。数据字段包含错误号。事件ID:5011错误代码:0x6D000780对最新版本的软件更改很小,无法解释此问题(只是存储过程中的一个新字段),但是我无法还原旧版本以检查是否存在问题。我有相同的…