Получение списка всех приложений
Я пытаюсь получить список всех открытых приложений. В частности, если вы откроете диспетчер задач и перейдете на вкладку приложений, этот список.
мы пытались использовать что-то вроде этого:
foreach (var p in Process.GetProcesses())
{
try
{
if (!String.IsNullOrEmpty(p.MainWindowTitle))
{
sb.Append("\r\n");
sb.Append("Window title: " + p.MainWindowTitle.ToString());
sb.Append("\r\n");
}
}
catch
{
}
}
Как в нескольких примерах ямы нашли, но это неНе тяните все заявки для меня. Это'захватывает только половину тех, которые я вижу в диспетчере задач или которые я знаю, что у меня открыт. Например, этот метод неt по какой-то причине использовать Notepad ++ или Skype, но ПОДНИМАЕТСЯ Google Chrome, Калькулятор и Microsoft Word.
Кто-нибудь знает, почему это не так?работает правильно или как это сделать?
Кроме того, друг предположил, что это может быть проблема с разрешениями, но я использую Visual Studio от имени администратора, и это не так.т изменилось.
РЕДАКТИРОВАТЬ: проблема, которую яЯ понимаю, что большинство решений, которые яВам дали только возвращает список ВСЕХ процессов, который нет, что я хочу. Я просто хочу, чтобы открытые приложения или окна, как список, который появляется в диспетчере задач. Не список каждого процесса.
Кроме того, я знаю, что здесь есть плохой код, включая пустой блок catch. Это был простой проект, чтобы понять, как это работает в первую очередь.