Bonjours, j'aimerais savoir s'il est possible dans une application de detecter la fin de son processus/ou la fin d'execution de cette application?
Si oui comment peut on faire?
Merci
Bonjours, j'aimerais savoir s'il est possible dans une application de detecter la fin de son processus/ou la fin d'execution de cette application?
Si oui comment peut on faire?
Merci
Salut,
Si c'est toi qui lance cette application tu peux utiliser "createprocess", avec un "waitforsingleobject" pour détecter la fin.
@+.
En fait j'ai une application que je fait tourner en tache de fond, elle est executer au démarrage de windows, et je voudrais savoir s'il est possible d'executer des actions avant la fin de cette application. C'est a dire qu'elle détecte elle meme sa propre fermeture?Existe-t-il un evenement windows a controler??
Merci
En fait mon exe, se lance automatiquement a chaque démarrage de windows et en fait ce que j'aimeré c'est a partir de cette exécutable detecter l'evenement de fermeture de son processus puis faire mes actions avant la fin du processus.
Merci
Ca dépend ce que tu veux faire mais tu peux peut-être regarder l'aide sur les sections initialization/finalization.
Autrement dans le source de ton projet(dpr) tu peux appeler tes actions après l'application.run, par contre il ne faut pas que ce que tu appelles contiennes des composants de ton application, sinon ca risque de planter.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 begin Application.Initialize; Application.CreateForm(TForm1, Form1); Application.Run; MesActionsdeFermeture; end.
Normalement tu as l'évènement OnCloseQuery qui te permet de faire des actions avant la fermeture de celle-ci.Envoyé par locs
Sinon il faut que tu interceptes le message windows qui donne l'ordre de fermeture à ton application.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 uses ... type TfrmMain = class(TForm) private { Déclarations privées } public { Déclarations publiques } procedure WMQueryEndSession(var Msg:TWMQueryEndSession); message WM_QUERYENDSESSION; end; var frmMain: TfrmMain; implementation procedure TfrmMain.WMQueryEndSession(var Msg: TWMQueryEndSession); begin // Ici tes actions à faire Msg.Result := 1; // si 1 on ferme l'application (voir aide pour les autres possibilité) end; end.
Modérateur Delphi
Le guide du bon forumeur :
- Les règles du forum tu liras
- La FAQ et les tutoriels tu consulteras
- La fonction Recherche tu utiliseras
- Google tu vénèreras
__________
Rayek World : Youtube Facebook
Bonjour, je viens de regarder les fonction OnCloseQuery, et OnClose, mais je n'arrive pas a les utiliser dans mon programme!
Quelqu'un pourrais me donner un exemple de syntaxe svp? je suis débutant en delphi!
Merci
Qu'est ce que tu veux faire dans le OnCloseQuery ou Onclose ?
1- Sélectionner la form
2- Aller dans ses évènements
3- Double cliquer sur l'évènement OnCloseQuery
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 procedure TfrmMain.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin case MessageDlg('Etes vous sûr de vouloir fermer l''application',mtConfirmation,[mbYes,mbNo],0) of mrYes : Canclose := True; mrNo : Canclose := False; end; end;
Modérateur Delphi
Le guide du bon forumeur :
- Les règles du forum tu liras
- La FAQ et les tutoriels tu consulteras
- La fonction Recherche tu utiliseras
- Google tu vénèreras
__________
Rayek World : Youtube Facebook
Partager