获取进程名称窗口标题名称和已安装的软件名称

时间:2011-03-28 07:25:42

标签: c++

我想知道一个软件运行它的进程名称和它的公司名称以及它的windows标题名称 例如 添加/删除程序中的软件名为FileZilla Client 3.3.2.1 它的进程名称是filezilla.exe 它的公司名称是fileZilla Project 它的Windows标题名称是FileZilla

是否可以获得这些连接

2 个答案:

答案 0 :(得分:1)

使用EnumWindows枚举所有窗口以获取其窗口的HANDLE(HWND)。

每个窗口你可以: 使用GetWindowText获取其标题。 使用GetWindowThreadProcessId获取windows的进程ID。 使用OpenProcess获取进程的HANDLE。 使用GetModuleBaseName获取exe的名称。

答案 1 :(得分:1)

运行程序和“添加/删除程序”对话框之间的关联相当薄弱,温和地说。已安装的程序列表实际上是(非)安装程序列表。此外,这些通常是脚本卸载程序。只有该脚本中的某个位置才会是已安装文件的列表。没有标准的方法来访问这些脚本。因此,您无法确定卸载程序将删除哪些文件,因此您无法关联正在运行的程序及其卸载程序。