Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[WDx] Comment récupérer le titre d'une fenetre non-windows

1 réponse
Avatar
Georges Peyre
(supersedes <mn.eb877d5479459347.17528@wanadoo.fr>)

Bonjour,

A partir d'une application Windev ( en 1er plan ) je désire récupérer
le titre d'une fenêtre NON-WINDEV qui se trouve au second plan.

Pour celà j'utilise les fonctions suivantes :
ResActive est un entier
ResTitreFen est une chaîne
ResActive = SysFenActive ()
ResTitreFen = SysFenTitre(ResActive)
Info(ResTitreFen)

Je ne parviens qu'à récupérer le titre de la fenêtre de l'application
Windev et pas celui de l'application cachée au second plan.

Ou est mon erreur ?
Que dois-je faire pour récupérer le titre d'une fenêtre d'une autre
application Non windev qui est active mais n'a pas le focus ?

Merci d'avance

Cordialement

--
Elle est pas belle la vie ?

1 réponse

Avatar
Georges Peyre
Bonjour,

J'ai pu récupérer sur le site de Cyrille Beaussier le code suivant que
j'ai adapté et qui me permet de récupérer la liste des fenêtres
présentes en arrière de mon application.
Dans ce code la dernière fenêtre ayant eu le focus ( donc celle que je
viens de capturer est toujours la 1ère de la liste à condition que
j'élimine 2 noms de fenêtres, "M" et "DEFAULT IME"
Pensez-vous que cette solution est suffisante ou dois-je prendre une
autre précaution ?

Cordialement


Lg, Ok sont des entiers
hWnd est un entier
lpString est une chaîne fixe sur 255
WNomLu est une chaîne
hWnd = AppelDLL32("User32", "GetWindow", Handle(), 2)
ListeSupprimeTout(Liste1)
WFenetreCapturee = ""
TANTQUE hWnd <> Handle()
Multitache()
Lg = AppelDLL32("User32", "GetWindowTextLengthA", hWnd)
Ok = AppelDLL32("User32", "GetWindowTextA", hWnd, &lpString, Lg + 1)
SI Ok ALORS
WNomLu = Gauche(lpString,Lg)
SI PAS Majuscule(WNomLu) = "M" ET PAS Majuscule(WNomLu) = "DEFAULT
IME" ALORS
ListeAjoute(Liste1,WNomLu)
ListeSelectPlus(Liste1,1)
WFenetreCapturee = Liste1[Liste1]
SORTIR
FIN
FIN
hWnd = AppelDLL32("User32", "GetWindow", hWnd, 2)
SI hWnd = 0 ALORS
SORTIR
FIN
FIN
Info(WFenetreCapturee)

--
Elle est pas belle la vie ?