J'ai une DLL qui est en fait un service com qui est enregistré et ensuite chargé par un autre processus .exe. Je voudrais quand l'utilisateur quitte le fichier .exe pour exécuter certaines étapes de fermeture de ressources à partir de ma DLL avant qu'il ne soit trop tard. J'ai essayé d'intercepter le DLLPROCESSDETACH ou DLLTHREADDETACH à partir du DllMain de ma DLL mais il semble que quand il y arrive, il est déjà trop tard car les threads démarrés par ma DLL (dont j'ai besoin pour exécuter les étapes de fermeture) ont déjà arrêté ?! Bien sûr, je ne contrôle pas le code .exe sinon j'aurais appelé à partir de là un appel pour exécuter ces étapes de fermeture propres avant qu'il ne se termine. Je ne peux travailler que sur la DLL elle-même. Il ne semble pas que le DllCanUnloadNow ou le DllUnregisterServer soient appelés non plus.Comment savoir si le fichier .exe chargé par ma DLL est sur le point de sortir?
Est-ce que quelqu'un peut contourner cette situation?
Merci beaucoup d'avance pour toutes les entrées.
Ne fonctionne pas, car ils sont appelés à partir de 'DLLPROCESSDETACH' – MSalters