Pour intercepter le lancement d'un processus, cela sous-entend que tu te mets entre le processus père et le processus fils. Sous windows, le processus père est généralement l'explorateur windows (lorsque tu double-cliques sur l'icone de l'application, ou bien en faisant démarrer -> Exécuter), mais peut-être un autre processus comme un service, ou n'importe quel processus proposant d'exécuter une application (gestionnaire de tâches, invite de commande, ou ta propre application).
Tu ne peux donc pas te mettre entres les 2 si l'application père ne l'a pas prévu. (Mal)heureusement, l'explorateur Windows propose cette fonctionnalité (faille rêvée des fabricants de programmes malveillants), en modifiant une ou plusieurs clés de la base de registre, qui te permet d'insérer ton propre programme au démarrage de chaque application. Ainsi chaque application lancée sera en fait non pas démarrée par l'explorateur, mais par ton application, et te donne ainsi un certain contrôle sur chaque application démarrée par l'explorateur.
C'est d'ailleurs ce que font les anti-virus.