Get process execution?

how do I wait with my app till there's some new process and check it's name? do I have to use timer and list processes (I know how to do this) or is there a function for this?
From user mode the only way to be notified is through WMI:

From kernel mode there is PsSetCreateProcessNotifyRoutine():
since that's kinda confusing for me, would it be really inefficient to set timer to every 10 sec and

1. get all the processes
2. list thru them
3. find specific process
4. if found, do stuff, if not, do nothing
Topic archived. No new replies allowed.