Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > Отсев системных процессов.


Автор: En_t_end 17.9.2005, 15:32
Задача стоит следующая... нужно отсеивать системные процессы. Вопрос, имеют ли они особые PID'ы, либо есть ли функция проверяющая системный это процесс или нет по PID'у.

Автор: _hunter 17.9.2005, 15:43
а что подразумевается под системным процессом?

Автор: En_t_end 17.9.2005, 15:48
_hunter
Процесс обслуживающий ядро и другие критические системные процессы. Ещё бы хотелось отсеивать сервисы.

Автор: Mayk 17.9.2005, 15:56
Полагаю надо копать в сторону PPID.
В частности логично предположить, что приложения запущенные services.exe(запущенный winlogon.exe(запущенный smss.exe(запущненый System(у которого ppid=0)))) есть сервисы

Автор: _hunter 17.9.2005, 15:56
тогда можно просто проверить цепочку запусков...
процесс System запускает smss.exe он запускает winlogon.exe он services.exe а он уже все сервисы...
т.е. если дошел по цепочке до Parent-PID' ов до System -- можно считать процесс системным...
( у сервисов предок -- services.exe )

Автор: En_t_end 17.9.2005, 16:02
OK. Спасибо!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)