Fermer et relancer une application delphi

Résolu
benfluorex Messages postés 6 Date d'inscription jeudi 11 novembre 2004 Statut Membre Dernière intervention 15 octobre 2009 - 30 janv. 2006 à 18:38
benfluorex Messages postés 6 Date d'inscription jeudi 11 novembre 2004 Statut Membre Dernière intervention 15 octobre 2009 - 1 févr. 2006 à 21:33
Est-il possible de fermer (ça oui) et de relancer une application depuis cette application ?
Reformulation : j'appuie sur un bouton, mon appli se ferme et s'ouvre de nouveau.
Si oui comment?
Cordialement.

3 réponses

Cirec Messages postés 3833 Date d'inscription vendredi 23 juillet 2004 Statut Modérateur Dernière intervention 18 septembre 2022 50
30 janv. 2006 à 22:40
Salut,
une autre solution plus simpliste celle la mais tout dépend le type d'application que tu désires redémarrer

procedure TForm1.RestartClick(Sender: TObject);
begin
Visible := False;
WinExec('Project1.exe', SW_SHOWNORMAL );
Close;
end;

Le problème est que la deuxième instance de ton application est lancé avant que la première ne soit terminée.
Si tu ne fais pas un controle sur une double instance (ton application est démarrer deux fois) ça fonctionnera

@+
Cirec
3
cs_ManChesTer Messages postés 374 Date d'inscription vendredi 20 octobre 2000 Statut Modérateur Dernière intervention 15 janvier 2021
30 janv. 2006 à 21:26
Il ya plusieurs solutions , les 2 les plus courantes:

Solution 1: Tu peux utiliser le planificateur de taches.

1.Parametrer le planificateur
2.Fermer l'appli
......
3.Le planificateur relance l'appli
4.Enlever les parametres dans le planificateur

Solution 2 : Faire un second executable (ou meme un batch)
Lancer l'excutable externe
Quitter l'appli principale

L'executable externe attend (par ex avec un sleep, ou attend un evenement donné)
L'executable externe relance l'application principale
L'executable externe se feme.

Bon Coding ....

ManChesTer.
0
benfluorex Messages postés 6 Date d'inscription jeudi 11 novembre 2004 Statut Membre Dernière intervention 15 octobre 2009
1 févr. 2006 à 21:33
Je remercie Manchester et Cirec de leurs solutions qui sont toutes les 2 pertinentes, mais, comme il faut faire un choix, je vais travailler la solution de Cirec.
Cordialement.
0
Rejoignez-nous