Получаю имена нужных процессов. В label11
хранится имя процесса активного окна. Нужно сравнить каждое имя процессов с именем процесса активного окна. Но получается, что сравнивается только 1 элемент. У меня их 2, а может быть и больше.
var process = Process.GetProcessesByName(processName).FirstOrDefault();
if (process != null)
{
//Сравниваем полученные ID с ID активного окна
if (label11.Text != process.ProcessName)
{
if (timer1.Enabled == false)
{
timer1.Enabled = true;
_stopWatch.Start();
}
}
else
{
timer1.Enabled = false;
_stopWatch.Stop();
}
}
ПОПРАВКА: он сравнивает только последний элемент
Вы сами написали в своем коде:
var process = Process.GetProcessesByName(processName).FirstOrDefault();
т.е. в переменной process
хранится только 1 процесс. Если вы хотите получить все процессы с именем processName
, то вы должны сделать так:
var processes = Process.GetProcessesByName(processName);
foreach (var process in processes)
{
if (process != null)
{
//Сравниваем полученные ID с ID активного окна
if (label11.Text != process.ProcessName)
{
if (timer1.Enabled == false)
{
timer1.Enabled = true;
_stopWatch.Start();
}
}
else
{
timer1.Enabled = false;
_stopWatch.Stop();
}
}
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
День добрый! Есть форма с расположены на ней GridомКак правильнее организовать работу с одной формой и несколькими источниками List
Доброго времени сутокНеобходимо обновить Таблицу в Mysql, а вернее заменить одно значение в одной строке
Требуется подключить базу данных, чтобы была возможность пользоваться программой и с другого компьютераНужно проверять имя пользователя...