Вариант - поставить нотификатор на создание процесса и мониторить появления чего-то типа c:\windows\explorer.exe
Старт процесса тогда. Но explorer'ов может быть куча если стоит "launch folder windows in a separate process". Можно проверить по \sessions в принципе.
по эксплореру лучше не делать, когда малвар какойто на компе, частенько падает он. По этому появляться он может постоянно. Конечно первый раз ты сможешь норм отследить. НО если многопользовательская система, то тут уже надо другой метод искать. Как вариант - следить за созданием объектов с определенными SID'ами, отличными от системных.
http://msdn.microsoft.com/en-us/library/aa379402(v=vs.85).aspx http://www.codeproject.com/KB/system/winlogon_notification_package.aspx
2 ant_man csrss запускается на стадии загрузки системы от SYSTEM (еще до загрузки Winlogon) так что тем самым ты сможешь поймать только факт загрузки компа (что абсолютно бесполезно)
krol Как вариант: 1) при станте дрова перечислить все процессы и составить список всех SessionId. 2) поставить нотификатор на запуск процесса 3) в нотификаторе получать SessionId (есть для этого спец. функа) и искать его в уже имеющемся массиве