Fermeture d'une appli +DLL utilisée

Le
Damien DEFEUX
Bonjour,

J'ai une application en VB5 qui lance une DLL pour communiquer avec le port
com, lorsque je veux fermer l'application (END) ça plante. Il faut faire un
Ctrl +Alt + Suppr. Comment faire pour quitter le programme ? Par quoi
remplacer le END pour fermer sauvagement l'application ?

Merci d'avance.

Damien DEFEUX
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Patrice Henrio
Le #17548371
Damien DEFEUX a écrit :
Bonjour,

J'ai une application en VB5 qui lance une DLL pour communiquer avec le port
com, lorsque je veux fermer l'application (END) ça plante. Il faut faire un
Ctrl +Alt + Suppr. Comment faire pour quitter le programme ? Par quoi
remplacer le END pour fermer sauvagement l'application ?

Merci d'avance.

Damien DEFEUX




Il ne faut pas fermer sauvagement une application, sous peine de voir
rester en mémoire des morceaux de code, de variables, d'objets et des dll.

Une application se ferme lorsqu'elle a fini son traitement

Plus simplement


dim application as new application_cls

application.initialisation

do
application.traitement
if application.fin then exit do
loop


Application est donc un objet pour lequel sont définis diverses méthodes
(traitements et en particulier initialisation). On défini de plus une
propriété fin qui est un booléen indiquant si les traitements sont finis
Damien DEFEUX
Le #17548871
"Patrice Henrio" news:
Damien DEFEUX a écrit :
Bonjour,

J'ai une application en VB5 qui lance une DLL pour communiquer avec le
port com, lorsque je veux fermer l'application (END) ça plante. Il faut
faire un Ctrl +Alt + Suppr. Comment faire pour quitter le programme ? Par
quoi remplacer le END pour fermer sauvagement l'application ?

Merci d'avance.

Damien DEFEUX


Il ne faut pas fermer sauvagement une application, sous peine de voir
rester en mémoire des morceaux de code, de variables, d'objets et des dll.

Une application se ferme lorsqu'elle a fini son traitement

Plus simplement


dim application as new application_cls

application.initialisation

do
application.traitement
if application.fin then exit do
loop


Application est donc un objet pour lequel sont définis diverses méthodes
(traitements et en particulier initialisation). On défini de plus une


>propriété fin qui est un booléen indiquant si les traitements sont finis



Le soucis c'est que malgrés l'api "abort" de ma DLL celle-ci ne veut pas
rendre la main à mon programme ce qui fait que je suis bloqué. Lorsque le
programme lance la communication via la DLL ça fonctionne bien, mais à un
moment il faut bien fermer l'appli est là comment faire.

PS je suis en VB5

Damien



Patrice Henrio
Le #17549311
Damien DEFEUX a écrit :
"Patrice Henrio" news:
Damien DEFEUX a écrit :
Bonjour,

J'ai une application en VB5 qui lance une DLL pour communiquer avec le
port com, lorsque je veux fermer l'application (END) ça plante. Il faut
faire un Ctrl +Alt + Suppr. Comment faire pour quitter le programme ? Par
quoi remplacer le END pour fermer sauvagement l'application ?

Merci d'avance.

Damien DEFEUX


Il ne faut pas fermer sauvagement une application, sous peine de voir
rester en mémoire des morceaux de code, de variables, d'objets et des dll.

Une application se ferme lorsqu'elle a fini son traitement

Plus simplement


dim application as new application_cls

application.initialisation

do
application.traitement
if application.fin then exit do
loop


Application est donc un objet pour lequel sont définis diverses méthodes
(traitements et en particulier initialisation). On défini de plus une


>propriété fin qui est un booléen indiquant si les traitements sont finis



Le soucis c'est que malgrés l'api "abort" de ma DLL celle-ci ne veut pas
rendre la main à mon programme ce qui fait que je suis bloqué. Lorsque le
programme lance la communication via la DLL ça fonctionne bien, mais à un
moment il faut bien fermer l'appli est là comment faire.

PS je suis en VB5

Damien




c'est donc la dll qui est mal programmée car elle-même devrait suivre
les mêmes principes que l'application. Le fait d'être en VB5 ne change
rien à ces principes qui s'appliquaient déjà en Pascal.
Le processus Abort ne me parait pas la manière la plus saine de sortir
d'une dll.



Peut-être un problème de boucle folle dans la dll ? C'est souvent le
cas. Ou alors un retour de dll qui n'est pas ce qui est attendu.
Patrice Henrio
Le #17549301
Damien DEFEUX a écrit :
"Patrice Henrio" news:
Damien DEFEUX a écrit :
Bonjour,

J'ai une application en VB5 qui lance une DLL pour communiquer avec le
port com, lorsque je veux fermer l'application (END) ça plante. Il faut
faire un Ctrl +Alt + Suppr. Comment faire pour quitter le programme ? Par
quoi remplacer le END pour fermer sauvagement l'application ?

Merci d'avance.

Damien DEFEUX


Il ne faut pas fermer sauvagement une application, sous peine de voir
rester en mémoire des morceaux de code, de variables, d'objets et des dll.

Une application se ferme lorsqu'elle a fini son traitement

Plus simplement


dim application as new application_cls

application.initialisation

do
application.traitement
if application.fin then exit do
loop


Application est donc un objet pour lequel sont définis diverses méthodes
(traitements et en particulier initialisation). On défini de plus une


>propriété fin qui est un booléen indiquant si les traitements sont finis



Le soucis c'est que malgrés l'api "abort" de ma DLL celle-ci ne veut pas
rendre la main à mon programme ce qui fait que je suis bloqué. Lorsque le
programme lance la communication via la DLL ça fonctionne bien, mais à un
moment il faut bien fermer l'appli est là comment faire.

PS je suis en VB5

Damien




Il serait sans doute bon que tu indiques comment tu appelles la dll dans
ton application.
Publicité
Poster une réponse
Anonyme