【问题标题】:show running applications (alt-tab program list)显示正在运行的应用程序(alt-tab 程序列表)
【发布时间】:2011-11-29 13:17:52
【问题描述】:

在这里找到解决方案:http://blogs.msdn.com/b/oldnewthing/archive/2007/10/08/5351207.aspx


我正在尝试列出正在运行的应用程序,我在几个论坛上找到了这个解决方案:

Process[] processes = Process.GetProcesses();
foreach (var proc in processes)
{
     if (!string.IsNullOrEmpty(proc.MainWindowTitle))
        Console.WriteLine(proc.MainWindowTitle);
}

但是,这与您按 alt-tab 时给我的列表不同。例如:firefox、explorer 和 iexplore 都返回一个空/null MainWindowTitle。还有其他方法可以访问此列表吗?也许通过 windowsAPI?

我正在使用 Windows 7 32 位

先谢谢你了。

【问题讨论】:

标签: c# process alt-tab processlist


【解决方案1】:

Windows 上没有隐藏进程。仅限您没有(安全)权限查看的进程。

请看下面:

Retrieve a complete processes list using C#

【讨论】:

  • 我可以看到所有进程,但我无法检索主窗口标题。
【解决方案2】:

试试这个(取自here),但我不确定它是否能解决您的问题:

static void Main(string[] args)
{
    GetProcesses();
    GetApplications();
    Console.Read();
}
public static void GetProcesses()
{
    StringBuilder sb = new StringBuilder();
    ManagementClass MgmtClass = new ManagementClass("Win32_Process");

    foreach (ManagementObject mo in MgmtClass.GetInstances())           
        Console.WriteLine("Name:" + mo["Name"] + "ID:" + mo["ProcessId"]);               

    Console.WriteLine();
}

public static void GetApplications()
{
    StringBuilder sb = new StringBuilder();
    foreach (Process p in Process.GetProcesses("."))
        try
        {
            if (p.MainWindowTitle.Length > 0)
            {
                Console.WriteLine("Window Title:" + p.MainWindowTitle.ToString());
                Console.WriteLine("Process Name:" + p.ProcessName.ToString());
                Console.WriteLine("Window Handle:" + p.MainWindowHandle.ToString());
                Console.WriteLine("Memory Allocation:" + p.PrivateMemorySize64.ToString());                     
            }
        }
        catch { }
}

【讨论】:

  • 谢谢,但这并不能解决我的问题。我看到了所有进程,但 getapplications 函数只给了我一个正在运行的程序(它自己的进程)。
猜你喜欢
  • 1970-01-01
  • 2016-10-10
  • 1970-01-01
  • 2011-08-15
  • 2011-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多