|
[WD10] Mon appli ne se ferme plus |
Iniciado por NiCo, 24,ene. 2006 12:04 - 14 respuestas |
| |
| | | |
|
| |
Publicado el 24,enero 2006 - 12:04 |
Bonjour,
Voilà, j'ai un petit problème. Lorsque je quitte mon application, la fenêtre se ferme bien mais l'application continue son exécution (le processus apparaît toujours dans le gestionnaire des tâches de Windows). D'où cela peut-il venir ? Y-a-t-il un moyen de tuer le processus lors de la fermeture de l'application ?
Merci d'avance, ce problème est assez gênant.
Nicolas |
| |
| |
| | | |
|
| | |
| |
Publicado el 24,enero 2006 - 12:32 |
Le problème se produits sous quelle(s) version(s) de windows ?
eric l.
"NiCo" <ltdnico@wanadoo.fr> a écrit dans le message de news: 43d5fa2f$1@news.pcsoft.fr...
Bonjour,
Voilà, j'ai un petit problème. Lorsque je quitte mon application, la fenêtre se ferme bien mais l'application continue son exécution (le processus apparaît toujours dans le gestionnaire des tâches de Windows). D'où cela peut-il venir ? Y-a-t-il un moyen de tuer le processus lors de la fermeture de l'application ?
Merci d'avance, ce problème est assez gênant.
Nicolas
|
| |
| |
| | | |
|
| | |
| |
Publicado el 24,enero 2006 - 12:36 |
Windows XP Pro SP2
Eric L. a écrit :
Le problème se produits sous quelle(s) version(s) de windows ?
eric l.
|
| |
| |
| | | |
|
| | |
| |
Publicado el 24,enero 2006 - 13:02 |
Bonjour,
Voilà, j'ai un petit problème. Lorsque je quitte mon application, la fenêtre se ferme bien mais l'application continue son exécution (le processus apparaît toujours dans le gestionnaire des tâches de Windows). D'où cela peut-il venir ? Y-a-t-il un moyen de tuer le processus lors de la fermeture de l'application ?
Tu es sûr qu'il n'y a pas une fenêtre soeur non visible quelque part? |
| |
| |
| | | |
|
| | |
| |
Publicado el 24,enero 2006 - 13:13 |
Je vais revérifier mais je ne pense pas, je ferme les fenêtres dans le traitement "Fermeture du projet"
Gilles Guédikian a écrit :
Tu es sûr qu'il n'y a pas une fenêtre soeur non visible quelque part?
|
| |
| |
| | | |
|
| | |
| |
Publicado el 24,enero 2006 - 13:14 |
Après vérification, aucune fenêtre soeur n'est ouverte. |
| |
| |
| | | |
|
| | |
| |
Publicado el 24,enero 2006 - 14:14 |
Bonjour
"NiCo" <ltdnico@wanadoo.fr> a écrit dans le message de news: 43d5fa2f$1@news.pcsoft.fr...
Bonjour,
Voilà, j'ai un petit problème. Lorsque je quitte mon application, la fenêtre se ferme bien mais l'application continue son exécution (le processus apparaît toujours dans le gestionnaire des tâches de Windows). D'où cela peut-il venir ? Y-a-t-il un moyen de tuer le processus lors de la fermeture de l'application ?
Merci d'avance, ce problème est assez gênant.
Nicolas
Ce problème peut se poser si ton application n'est pas arrêtée via un Finprogramme Donc, vérifie de quelle manière tu quittes le programme. Si tu te contentes de fermer la fenêtre via un "Ferme", il faut que tu mettes un "Finprogramme" à la place
A+
Val |
| |
| |
| | | |
|
| | |
| |
Publicado el 24,enero 2006 - 14:45 |
Merci c'était bien ça, cela fonctionne maintenant
Val a écrit :
Bonjour "NiCo" <ltdnico@wanadoo.fr> a écrit dans le message de news: 43d5fa2f$1@news.pcsoft.fr... Bonjour,
Voilà, j'ai un petit problème. Lorsque je quitte mon application, la fenêtre se ferme bien mais l'application continue son exécution (le processus apparaît toujours dans le gestionnaire des tâches de Windows). D'où cela peut-il venir ? Y-a-t-il un moyen de tuer le processus lors de la fermeture de l'application ?
Merci d'avance, ce problème est assez gênant.
Nicolas
Ce problème peut se poser si ton application n'est pas arrêtée via un Finprogramme Donc, vérifie de quelle manière tu quittes le programme. Si tu te contentes de fermer la fenêtre via un "Ferme", il faut que tu mettes un "Finprogramme" à la place A+ Val |
| |
| |
| | | |
|
| | |
| |
Publicado el 24,enero 2006 - 18:27 |
> Merci c'était bien ça, cela fonctionne maintenant
Ouais mais boaf, FinProgramme c'est un peu extreme comme solution.
Si la fermeture de la fenêtre principale de ton application ne fait pas disparaitre l'appli, il y a un souci quelque part dans ton code.
Le FinProgramme revient à tuer la tache, et donc à court circuiter un code qui a un problème et qui pourra t'ennuyer dans le futur.
Tu devrais chercher la véritable cause du problème.
Gilles. |
| |
| |
| | | |
|
| | |
| |
Publicado el 24,enero 2006 - 19:00 |
Gilles Guédikian avait prétendu :
Merci c'était bien ça, cela fonctionne maintenant Ouais mais boaf, FinProgramme c'est un peu extreme comme solution. Si la fermeture de la fenêtre principale de ton application ne fait pas disparaitre l'appli, il y a un souci quelque part dans ton code. Le FinProgramme revient à tuer la tache, et donc à court circuiter un code qui a un problème et qui pourra t'ennuyer dans le futur. Tu devrais chercher la véritable cause du problème. Gilles.
J'ai eu un cas un peu semblable, une connexion non libérée lors de la sortie du programme à cause d'une mauvaise syntaxte utilisée pour l'instruction Ferme. Après correction de la syntaxte, tout est revenu dans l'ordre. Si je me souviens, j'utilisais Ferme("*") ce qui n'est pas correct (de mémoire car je n'ai pas retrouvé l'endroit où j'ai eu le problème).
-- Pascal N0.pascal.SPAM@efpe.biz Ne garder que le prénom pour me joindre |
| |
| |
| | | |
|
| | |
| |
Publicado el 24,enero 2006 - 19:14 |
Bonjour Gilles
"Gilles Guédikian" <boulot_SANSPOURRIEL_@neogie.com> a écrit dans le message de news: mn.c4177d61d8b92f38.21586@neogie.com...
Merci c'était bien ça, cela fonctionne maintenant Ouais mais boaf, FinProgramme c'est un peu extreme comme solution. Si la fermeture de la fenêtre principale de ton application ne fait pas disparaitre l'appli, il y a un souci quelque part dans ton code. Le FinProgramme revient à tuer la tache, et donc à court circuiter un code qui a un problème et qui pourra t'ennuyer dans le futur. Tu devrais chercher la véritable cause du problème. Gilles.
Euh ... je ne comprends pas très bien ce que tu dis car il n'y a absolument rien d'extrème à utiliser l'instruction "FinProgramme" pour fermer une application lorsque l'utilisateur clique, par exemple, sur un bouton [QUITTER]. Bien au contraire ... l'instruction "FinProgramme" termine l'exécution du programme en cours et ferme toutes les fenêtres dudit programme ... et ceci de façon propre.
Donc, cette instruction "FinProgramme" est à utiliser pour quitter le programme, au contraire de l'instruction "Ferme" qui, elle, ferme la fenêtre WinDev en cours seulement. Elle correspond donc parfaitement à la situation que Nico doit gérer (quand il quitte son application, il souhaite que l'application ne continue plus son exécution et que le processus n'apparaîsse plus dans le gestionnaire des tâches de Windows).
A mon avis tu confonds avec l'instruction "ExeTermine" qui, elle est radicale puisqu'elle termine l'exécution d'une application sur le poste en cours (toutes les instances de l'exécutable étant "tuées").
A+
Val |
| |
| |
| | | |
|
| | |
| |
Publicado el 24,enero 2006 - 20:54 |
Val a exprimé avec précision :
Bonjour Gilles "Gilles Guédikian" <boulot_SANSPOURRIEL_@neogie.com> a écrit dans le message de news: mn.c4177d61d8b92f38.21586@neogie.com... Merci c'était bien ça, cela fonctionne maintenant Ouais mais boaf, FinProgramme c'est un peu extreme comme solution. Si la fermeture de la fenêtre principale de ton application ne fait pas disparaitre l'appli, il y a un souci quelque part dans ton code. Le FinProgramme revient à tuer la tache, et donc à court circuiter un code qui a un problème et qui pourra t'ennuyer dans le futur. Tu devrais chercher la véritable cause du problème. Gilles. Euh ... je ne comprends pas très bien ce que tu dis car il n'y a absolument rien d'extrème à utiliser l'instruction "FinProgramme" pour fermer une application lorsque l'utilisateur clique, par exemple, sur un bouton [QUITTER]. Bien au contraire ... l'instruction "FinProgramme" termine l'exécution du programme en cours et ferme toutes les fenêtres dudit programme ... et ceci de façon propre. Donc, cette instruction "FinProgramme" est à utiliser pour quitter le programme, au contraire de l'instruction "Ferme" qui, elle, ferme la fenêtre WinDev en cours seulement. Elle correspond donc parfaitement à la situation que Nico doit gérer (quand il quitte son application, il souhaite que l'application ne continue plus son exécution et que le processus n'apparaîsse plus dans le gestionnaire des tâches de Windows). A mon avis tu confonds avec l'instruction "ExeTermine" qui, elle est radicale puisqu'elle termine l'exécution d'une application sur le poste en cours (toutes les instances de l'exécutable étant "tuées"). A+ Val
extrait de l'aide pour l'instruction FinProgramme: Toutes les fenêtres sont fermées sans qu'aucun code ne soit exécuté
Donc si du code doit être exécuté en fermeture de fenêtre ou de projet il ne faut pas terminer le progralmmme par un FinProgramme sinon le code de fermeture( fenetre et projet) n'est pas exécuté.
-- Pascal N0.pascal.SPAM@efpe.biz Ne garder que le prénom pour me joindre |
| |
| |
| | | |
|
| | |
| |
Publicado el 24,enero 2006 - 22:33 |
Sauf que l'on peut préciser le code de fermeture (vrai, il sera exécuté, faux, il ne le sera pas). c'est extrait de cette même page d'aide.
Pascal F a écrit :
Val a exprimé avec précision : Bonjour Gilles "Gilles Guédikian" <boulot_SANSPOURRIEL_@neogie.com> a écrit dans le message de news: mn.c4177d61d8b92f38.21586@neogie.com... Merci c'était bien ça, cela fonctionne maintenant Ouais mais boaf, FinProgramme c'est un peu extreme comme solution. Si la fermeture de la fenêtre principale de ton application ne fait pas disparaitre l'appli, il y a un souci quelque part dans ton code. Le FinProgramme revient à tuer la tache, et donc à court circuiter un code qui a un problème et qui pourra t'ennuyer dans le futur. Tu devrais chercher la véritable cause du problème. Gilles. Euh ... je ne comprends pas très bien ce que tu dis car il n'y a absolument rien d'extrème à utiliser l'instruction "FinProgramme" pour fermer une application lorsque l'utilisateur clique, par exemple, sur un bouton [QUITTER]. Bien au contraire ... l'instruction "FinProgramme" termine l'exécution du programme en cours et ferme toutes les fenêtres dudit programme ... et ceci de façon propre. Donc, cette instruction "FinProgramme" est à utiliser pour quitter le programme, au contraire de l'instruction "Ferme" qui, elle, ferme la fenêtre WinDev en cours seulement. Elle correspond donc parfaitement à la situation que Nico doit gérer (quand il quitte son application, il souhaite que l'application ne continue plus son exécution et que le processus n'apparaîsse plus dans le gestionnaire des tâches de Windows). A mon avis tu confonds avec l'instruction "ExeTermine" qui, elle est radicale puisqu'elle termine l'exécution d'une application sur le poste en cours (toutes les instances de l'exécutable étant "tuées"). A+ Val extrait de l'aide pour l'instruction FinProgramme: Toutes les fenêtres sont fermées sans qu'aucun code ne soit exécuté Donc si du code doit être exécuté en fermeture de fenêtre ou de projet il ne faut pas terminer le progralmmme par un FinProgramme sinon le code de fermeture( fenetre et projet) n'est pas exécuté. |
| |
| |
| | | |
|
| | |
| |
Publicado el 25,enero 2006 - 06:56 |
NiCo avait soumis l'idée :
Sauf que l'on peut préciser le code de fermeture (vrai, il sera exécuté, faux, il ne le sera pas). c'est extrait de cette même page d'aide. Pascal F a écrit : Val a exprimé avec précision : Bonjour Gilles "Gilles Guédikian" <boulot_SANSPOURRIEL_@neogie.com> a écrit dans le message de news: mn.c4177d61d8b92f38.21586@neogie.com... Merci c'était bien ça, cela fonctionne maintenant Ouais mais boaf, FinProgramme c'est un peu extreme comme solution. Si la fermeture de la fenêtre principale de ton application ne fait pas disparaitre l'appli, il y a un souci quelque part dans ton code. Le FinProgramme revient à tuer la tache, et donc à court circuiter un code qui a un problème et qui pourra t'ennuyer dans le futur. Tu devrais chercher la véritable cause du problème. Gilles. Euh ... je ne comprends pas très bien ce que tu dis car il n'y a absolument rien d'extrème à utiliser l'instruction "FinProgramme" pour fermer une application lorsque l'utilisateur clique, par exemple, sur un bouton [QUITTER]. Bien au contraire ... l'instruction "FinProgramme" termine l'exécution du programme en cours et ferme toutes les fenêtres dudit programme ... et ceci de façon propre. Donc, cette instruction "FinProgramme" est à utiliser pour quitter le programme, au contraire de l'instruction "Ferme" qui, elle, ferme la fenêtre WinDev en cours seulement. Elle correspond donc parfaitement à la situation que Nico doit gérer (quand il quitte son application, il souhaite que l'application ne continue plus son exécution et que le processus n'apparaîsse plus dans le gestionnaire des tâches de Windows). A mon avis tu confonds avec l'instruction "ExeTermine" qui, elle est radicale puisqu'elle termine l'exécution d'une application sur le poste en cours (toutes les instances de l'exécutable étant "tuées"). A+ Val extrait de l'aide pour l'instruction FinProgramme: Toutes les fenêtres sont fermées sans qu'aucun code ne soit exécuté Donc si du code doit être exécuté en fermeture de fenêtre ou de projet il ne faut pas terminer le progralmmme par un FinProgramme sinon le code de fermeture( fenetre et projet) n'est pas exécuté.
Exact, mais ce n'est pas le code de fin de projet, à moins de déplacer ce code ou de le dupliquer. Par contre impossible d'appeler une procédure en fermeture de projet, soit pour libérer des ressources soit pour vérifier que le programme peut s'arreter.
-- Pascal N0.pascal.SPAM@efpe.biz Ne garder que le prénom pour me joindre |
| |
| |
| | | |
|
| | |
| |
Publicado el 25,enero 2006 - 13:11 |
Bonjour Gilles "Gilles Guédikian" <boulot_SANSPOURRIEL_@neogie.com> a écrit dans le message de news: mn.c4177d61d8b92f38.21586@neogie.com... Merci c'était bien ça, cela fonctionne maintenant Ouais mais boaf, FinProgramme c'est un peu extreme comme solution. Si la fermeture de la fenêtre principale de ton application ne fait pas disparaitre l'appli, il y a un souci quelque part dans ton code. Le FinProgramme revient à tuer la tache, et donc à court circuiter un code qui a un problème et qui pourra t'ennuyer dans le futur. Tu devrais chercher la véritable cause du problème. Gilles. Euh ... je ne comprends pas très bien ce que tu dis car il n'y a absolument rien d'extrème à utiliser l'instruction "FinProgramme" pour fermer une application lorsque l'utilisateur clique, par exemple, sur un bouton [QUITTER]. A mon avis tu confonds avec l'instruction "ExeTermine" qui, elle est radicale puisqu'elle termine l'exécution d'une application sur le poste en cours (toutes les instances de l'exécutable étant "tuées").
Non je ne confonds pas, comme Pascal le dit, le chemin normal de fermeture de l'application n'est pas suivi.
Au mieux, on peut exécuter le code de fermeture du projet, mais si il y a des fenêtres qui procèdent à des nettoyages divers et variés dans le code de fermeture de fenêtre (suppression de fichiers temps par exemple), ce code n'est pas exécuté.
Ce qu'il y a de plus propre, c'est de fermer les fenêtres soeurs si il y en a, et de fermer la fenêtre principale. L'application DOIT quitter. Si elle ne quitte pas et qu'on est obligé de faire un finprogramme, c'est qu'il y a un bug, et il n'est pas très judicieux de laisser un bug dans l'appli.
Après... chacun voit midi à sa porte |
| |
| |
| | | |
|
| | | | |
| | |
|