PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2024 → [WD10] Mon appli ne se ferme plus
[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 ;-)