Служба Windows для задач

Есть ли какая-то служба в операционной системе Windows, которая отслеживает все процессы, которые выполнялись на компьютере в течение дня? Диспетчер задач сообщает вам, что происходит в данный момент, но я хочу узнать, что происходит в течение всего дня.

Я знаю, что можно использовать WMI для мониторинга текущего процесса создания и удаления через систему System.Management пространство имен. Например:

String query = @"SELECT * FROM __InstanceOperationEvent WITHIN 1 WHERE TargetInstance ISA 'Win32_Process'";

ManagementEventWatcher watcher = new ManagementEventWatcher(query);

// Set up a listener for events
watcher.EventArrived += new EventArrivedEventHandler(this.HandleEvent);

// Start listening
watcher.Start();

Но мне интересно, есть ли API (даже WMI), который уже отслеживает время жизни процесса для текущего сеанса Windows.

Я прошу прощения, если мой вопрос слишком общий и расплывчатый.

2 ответа

Просмотр событий кажется близким к тому, что вы хотите. Проверьте здесь

Возможно, нам следует начать с того, что вы пытаетесь достичь, отслеживая историю процессов.

Обычно такая история не сохраняется, если только процесс не регистрируется в журнале событий или в собственном журнале.

Каждый процесс имеет свои собственные параметры ведения журнала, поэтому это неэффективно - мы должны ориентироваться на то, что необходимо.

Если вы хотите профилировать активные события с течением времени, возможно, вам нужна служба, собирающая такую ​​информацию с течением времени, но знание вашей конечной цели поможет обеспечить надлежащий порядок действий.

Упомянутое выше средство просмотра событий слишком расплывчато.

Другие вопросы по тегам