Fermeture propre d'une appli externe ?

Signaler
Messages postés
449
Date d'inscription
lundi 19 avril 2004
Statut
Membre
Dernière intervention
8 avril 2009
-
Messages postés
449
Date d'inscription
lundi 19 avril 2004
Statut
Membre
Dernière intervention
8 avril 2009
-
Donc piti probleme : je cherche a fermer "PROPREMENT" une appli externe a mon prog delphi7... et manque de bol:

1-Si je fas ça :
Hndl:=FindWindow(nil,'ViaMichelin Mapstore 2.32');
SendMessage(Hndl,WM_CLOSE,0,0);
l'appli se ferme en générant un message d'erreur genre plantage....

2-et si je fais ça (mode violent)

Hndl:=FindWindow(nil,'ViaMichelin Mapstore 2.32');
GetWindowThreadProcessId(Hndl, @ProcessId);
If ProcessId<>0 then
begin
HandleProcess:=OpenProcess(PROCESS_TERMINATE, False, ProcessId);
TerminateProcess(HandleProcess, 0);
end;

Ca ferme tout bien sauf que je perds les parametres de l'appli.....

Derniere solution envisageable, simuler un click sur la croix en haut a gauche de l'appli en question.

Comment fermer cette appli, pourquoi "SendMessage(Hndl,WM_CLOSE,0,0);" me fait il un comportement erratique?

Ou comment simuler un click sur la tite croix ?

gnh !

3 réponses

Messages postés
374
Date d'inscription
vendredi 20 octobre 2000
Statut
Modérateur
Dernière intervention
15 janvier 2021

pourquoi n'essaye tu pas simplement WM_Quit ?

Bon Coding ....

ManChesTer.
Messages postés
449
Date d'inscription
lundi 19 avril 2004
Statut
Membre
Dernière intervention
8 avril 2009
2
Et ca s'utilise comment ? D'apres le MSDN, le WM_QUIT ne ressemble pas au WM_CLOSE.... meme pas dutout.
gnh !
Messages postés
449
Date d'inscription
lundi 19 avril 2004
Statut
Membre
Dernière intervention
8 avril 2009
2
Arf, bon avec un postmessage ca passe. Merci bôcoo.

gnh !