Salut!
Je cherche à obtenir la liste des applications en cours avec BPW sous 98 & XP...
J'ai un code en Delphi, mais sa convertion en 16 bits ne fonctionne pas.
Pouvez-vous m'aider? je sèche grave! :cry:
Merci, à+
Version imprimable
Salut!
Je cherche à obtenir la liste des applications en cours avec BPW sous 98 & XP...
J'ai un code en Delphi, mais sa convertion en 16 bits ne fonctionne pas.
Pouvez-vous m'aider? je sèche grave! :cry:
Merci, à+
Bonjour !
Tu peux "scanner" l'ensemble des fenêtres gérées par le gestionnaire de fenêtres, en partant de la fenêtre principale de ton programme, à l'aide de la fonction (16 bits) GetNextWindow.
- Dans un sens avec le flag GW_HWNDNEXT,
- Dans l'autre sens avec le flag GW_HWNDPREV.
Tu peux faire deux fois une petite récursion jusqu'à ce que la fonction renvoie un handle nul (qui indique que tu as atteint l'une des extrémités de la chaîne).
Oui, c'est bien vu! :D
Mais entre temps, j'ai trouvé un autre moyen avec FindWindow: Mon objectif était de savoir si un programme est actif ou non, et pour cette opération, j'ai trouvé un thread sur le site qui disait de poster un message à l'appli, pour que cette dernière retourne un message de confirmation, sinon, cela signifie qu'elle n'est plus active. Avec cette méthode, il ya un problème lorsque les messages sont bloqués...
En ayant la liste de toutes les appli en cours, c'est évidemment plus efficace.
Et avec FindWindow, c'est plus rapide, mais est-ce-mieux?
Je vais tester pour voir si ça fonctionne bien sous XP, comme sous 98.
J'espère que ce thread servira aussi à d'autres membres!
Merci, à+