Gosh, I remember what inter process communication is, just couldn't remember what IPC stands for. Had to look in MSDN for that Sad

I don't think IPC works, because the other side is not exactly communicating. I'm trying to intercept (and selectively block) system events, and I think I'll have to rely on system notification.

Ermm, hook is too CPU extensive, that's what it says everywhere I look. I'd like to avoid that if I can. I like what the wait functions advertise better.

Besides, if I'm not mistaken, hook is for messages. From somewhere in MSDN of whatever SDK :
"A hook is a point in the system message-handling mechanism where an application can install a subroutine to monitor the message traffic in the system and process certain types of messages before they reach the target window procedure."
It's a bit misleading sometimes, since the WM_xxx is also refered to as Notification, as I'd like to call them messages.

Okay, I haven't really look into WH_SHELL hook. It's in par with the rest of the WH_xxx hooks, lol. Could you tell me if there is any shell hook type (HSHELL_xxx ?) that 'hook' system events on objects like thread, process, events, job, directory services, WMI?
Be it creation, change or deletion; AND, WAIT, before returning? In effect, blocking. Umm, is that synchronous, asynchronous or neither? They all run in separate processes. I get confused a lot...

I'm currently looking for different ways, instead of relying on system notification, to do that. But I'd like to be sure that there isn't anything that I missed that could do what I want, before abandoning this path completely. I'm working alone, and with so many documents to read, I just cannot be sure of things. Thats why I post this, hoping any helpful mind out there would care to give their advice.

Thanks