Insieme al tuo programma (A) che parte dopo l'avvio di un altro programma (B), potresti crearti una piccola applicazione (C) che controlla lo stato del programma B.

C resta sempre in esecuzione e appena B diventa attivo esegue A.