Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > .NET > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail


Ответ
 
Опции темы
Старый 14.12.2019, 23:04   #1
Artem0801
Новичок
Джуниор
 
Регистрация: 14.12.2019
Сообщений: 1
По умолчанию отследить появление процесса

нужна программа которая при запуске другой программы(фотошоп,блокнот и еще парочку) будет показывать дату запуска,завершения,время активности.

как отследить запуск программ?кроме как постоянно получать список запущенных процессов и перебирать их , есть варианты?
Artem0801 вне форума Ответить с цитированием
Старый 16.12.2019, 13:36   #2
Скарам
Дружите с Linq ;)
Форумчанин
 
Аватар для Скарам
 
Регистрация: 15.10.2008
Сообщений: 821
По умолчанию

Код:
using System;
using System.Management;

namespace ConsoleApp2
{
    internal class Program
    {
        private static void Main(string[] args)
        {
            var query = new WqlEventQuery("SELECT * FROM Win32_ProcessStartTrace");

            var watcher = new ManagementEventWatcher() {Query = query};

            watcher.EventArrived += WatcherOnEventArrived;
            watcher.Start();

            Console.WriteLine("Open an application (notepad.exe) to trigger an event.");
            Console.ReadLine();

            watcher.EventArrived -= WatcherOnEventArrived;
            watcher.Stop();
        }

        private static void WatcherOnEventArrived(object sender, EventArrivedEventArgs e)
        {
            var processName = e.NewEvent.Properties["ProcessName"].Value.ToString();
            if (processName.Contains("notepad"))
            {
                Console.WriteLine($"This is {processName}.");
            }
            else
            {
                Console.WriteLine($"This isn't notepad. This is {processName}.");
            }
           
        }
    }
}
Студия должна быть запущена с правами администратора или текущемо пользователю должны быть выданы права на запросы к CIMV2. Запрос можно написать так, чтобы сразу отфильтровывались нужные процессы. Читать доку.
Не давай организму поблажки, каждый день тренируй его в шашки..
Скарам вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отследить появление DOM 7in JavaScript, Ajax 15 27.01.2016 18:54
Как отследить начало и конец процесса? utro35 Общие вопросы Delphi 7 08.01.2012 13:26
Отследить появление новой записи в БД alekslep БД в Delphi 0 18.10.2010 13:38
Как отследить появление нового диска? 54rus Помощь студентам 13 10.02.2010 17:26
Появление процесса student_63 Win Api 16 23.04.2008 19:40