Comment vérifier si ce handle de fenêtre est pour la fenêtre de démarrage ou pour la fenêtre principale réelle de l’application

Je construis une petite bibliothèque qui pousse la fenêtre d’un processus au premier plan, en utilisant SetWindowPos et GetWindowRect de user32.dll. Le code trouve un MainWindowHandle d’un processus et le rend modal, puis non-modal, de sorte que la fenêtre apparaisse au premier plan.

Un problème que j’ai rencontré est l’écran de démarrage. Par exemple, lorsque MS Word s’ouvre pour la première fois, il affiche l’écran de démarrage. Ensuite, process.MainWindowHandle renvoie un descripteur à l’écran de démarrage. Quelques secondes plus tard, il disparaît et la fenêtre principale actuelle de MS Word apparaît et se traite. MainWindowHandle renvoie un autre descripteur à cette fenêtre.

Je me demande s’il est possible de vérifier si le descripteur est pour l’écran Splash ou non. Bien sûr, je peux attendre un certain temps, par exemple 15 secondes, si la poignée de la fenêtre change et si elle le fait, placez-la à nouveau au premier plan. Mais ce serait génial de savoir si c’est une poignée pour l’écran de démarrage.