DestroyWindow

Le
Jean Passe
Salut,

Pour fermer une fenêtre (Internet explorer ou autre navigateur) non ouverte
par l'appli WD9 j'utilise l'API DestroyWindow qui est faite pour ça.

hWnd est un entier=eNumHandle
bRetour=API("USER32","DestroyWindow",hWnd)

Mais ça ne marche pas.
Pourtant le handle utilisé est bon (je fais autre chose avec la fenêtre
avant de la fermer et ça marche).
Le code est pondu par WDAPI (que je n'ai jamais utilisé auparavant).

Une idée ?
Merci.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
patrice
Le #16628721
voir doc: A thread cannot use DestroyWindow to destroy a window created by a
different thread

"Jean Passe" news:48b3c745$0$881$
Salut,

Pour fermer une fenêtre (Internet explorer ou autre navigateur) non


ouverte
par l'appli WD9 j'utilise l'API DestroyWindow qui est faite pour ça.

hWnd est un entier=eNumHandle
bRetour=API("USER32","DestroyWindow",hWnd)

Mais ça ne marche pas.
Pourtant le handle utilisé est bon (je fais autre chose avec la fenêtre
avant de la fermer et ça marche).
Le code est pondu par WDAPI (que je n'ai jamais utilisé auparavant).

Une idée ?
Merci.




Jean Passe
Le #16628711
Salut,

voir doc: A thread cannot use DestroyWindow to destroy a window created by




a
different thread






Ben zut alors ... :-(

Merci.
roy.vincent1
Le #16628701
On 26 août, 11:28, "Jean Passe"
Salut,



Bonjour,

Utilisez plutot:
WM_CLOSE est un entier = 16
hWnd est un entier=eNumHandle
PostMessage (hWnd,WM_CLOSE,0,0)

Bon dev
Vince
http://vroy1.free.fr/wpfr/



>>voir doc: A thread cannot use DestroyWindow to destroy a window created by
a
>>different thread

Ben zut alors ... :-(

Merci.


Jean Passe
Le #16631061
Salut,

Utilisez plutot:
WM_CLOSE est un entier = 16
hWnd est un entier=eNumHandle
PostMessage (hWnd,WM_CLOSE,0,0)





Ok, je vais essayer ça, je n'y avais pas pensé du tout.

J'avais provisoirement solutionné le problème par un
ExeTermine("IEXPLORER.EXE") ce qui marche, mais faut que ce soit IE ... ;-)
et c'est emmerdant s'il a d'autres fenêtres ouverts.

Merci.
Jean Passe
Le #16652691
Salut,

Utilisez plutot:
WM_CLOSE est un entier = 16
hWnd est un entier=eNumHandle
PostMessage (hWnd,WM_CLOSE,0,0)






Marche pas non plus ... :-(

Je contibue à contourner avec Exetermine, mais ça ne peut être que
provisoire...

Merci.
PYT
Le #16653641
Jean Passe a écrit :
Salut,

Utilisez plutot:
WM_CLOSE est un entier = 16
hWnd est un entier=eNumHandle
PostMessage (hWnd,WM_CLOSE,0,0)






Marche pas non plus ... :-(

Je contibue à contourner avec Exetermine, mais ça ne peut être que
provisoire...

Merci.




J'ai vu sur un autre forum un truc du genre :

DestroyWindow(hwnd);
PostMessage(hwnd,WM_DESTROY,0,0);

a essayer peut être

PYT
PYT
Le #16653631
Jean Passe a écrit :
Salut,

Utilisez plutot:
WM_CLOSE est un entier = 16
hWnd est un entier=eNumHandle
PostMessage (hWnd,WM_CLOSE,0,0)






Marche pas non plus ... :-(

Je contibue à contourner avec Exetermine, mais ça ne peut être que
provisoire...

Merci.




Ca aussi

http://support.microsoft.com/kb/92528/fr

PYT
roy.vincent1
Le #16659971
Pour ce code,

WM_CLOSE est un entier = 16
hWnd est un entier=eNumHandle
PostMessage (hWnd,WM_CLOSE,0,0)

je suis quasi certain que ca fonctionne. Comment retrouver vous le
handle "eNumHandle" ? Cette entier doit contenir le handle de la
fenêtre à détruire.

A bientot

http://vroy1.free.fr/wpfr/


On 28 août, 21:23, "Jean Passe"
>http://support.microsoft.com/kb/92528/fr

> PYT

Merci, je vais voir ça.


Jean Passe
Le #16660831
Salut,

WM_CLOSE est un entier = 16
hWnd est un entier=eNumHandle
PostMessage (hWnd,WM_CLOSE,0,0)





je suis quasi certain que ca fonctionne. Comment retrouver vous le
handle "eNumHandle" ? Cette entier doit contenir le handle de la
fenêtre à détruire.





Je ne suis pas sur place, je ne peux donc regarder le code.
Mais la variable eNumHandle contient bien le bon handle de la fenêtre visée.
J'utilise ce handle pour récupérer le titre de la fenêtre (en WD je crois)
et ça ne pose pas problème.

Le eNumHandle n'est pas modifié avant de le passer à PostMessage, il y a
donc autre chose.
J'ai essayé en intégrand le fichier externe avec les valeurs hexa (je crois)
mais c'est pareil.

Merci.
Publicité
Poster une réponse
Anonyme