Suite à une question qu'on m'a posé, je vous propose ici une méthode (parmi tant) qui permet de détecter la fin de la mise en veille.
J'ai donc utilisé un hook global (WH_CALLWNDPROCRET), qui recoit les messages après qu'ils aient été traités par les fenêtres à qui ils sont destinés.
Puis, après avoir vérifié que le process auquel s'est attachée la DLL se termine bien par .SCR, on intercepte le message WM_CLOSE