Problème à la fermeture du prog !

arnakor Messages postés 13 Date d'inscription samedi 2 mars 2002 Statut Membre Dernière intervention 28 décembre 2006 - 6 janv. 2003 à 14:56
arnakor Messages postés 13 Date d'inscription samedi 2 mars 2002 Statut Membre Dernière intervention 28 décembre 2006 - 6 janv. 2003 à 16:10
Salut,

voilà, j'ai fait un prog en VB mais il y a maintenant un terrible plantage lorsqu'on le quitte. Qu'on l'éxécute à partir de VB ou du .exe généré, c'est pareil, ça bloque et il faut faire fin de tâche avec ctrl alt suppr.
Je pense que ça peut venir de pas mal de trucs mais si vous pouviez me donner quelques pistes ça serait vraiment cool !

Ca serait pas une question de libération de mémoire à la fermeture ? Si oui y aurait pas un moyen de libérer tout ce dont le prog s'est servi ?

Enfin chepa, je m'y connais pas en fermeture de prog, d'habitude on met End et ça quitte sagement !

Please help me !!

Merci d'avance, :)
@+
arnakor

6 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
6 janv. 2003 à 15:23
Ca peut venir de beaucoup de chose. Vérifie, avec des routine de traitement d'erreur (on error goto etiquette) à quel niveau ca bloque, ou en mettant des points d'arrêt. Logiquement, ca doit venir avant le End, car ce mot clé lance la libération automatique de la mémoire utilisée par le prog. (en théorie ;-)

DARK SIDIOUS
0
arnakor Messages postés 13 Date d'inscription samedi 2 mars 2002 Statut Membre Dernière intervention 28 décembre 2006
6 janv. 2003 à 15:34
Merci d'avance, :)
@+
arnakor
0
arnakor Messages postés 13 Date d'inscription samedi 2 mars 2002 Statut Membre Dernière intervention 28 décembre 2006
6 janv. 2003 à 15:38
Je me suis dit la première chose que je vais faire c'est un point d'arrêt sur le End. Il se passe sans problème ! C'est quand il doit revenir à Vb (ou à windows) qu'il n'y arrive pas ! Le truc c'est que même quand je viens de lancer le programme par VB et que je fais exécution-> arrêt, il n'arrive pas à l'arrêter ! Alors croyant que ça venait peut-être de mon ordi un peu instable, j'ai essayé sur un autre, plus puissant et stable et là : même problème :-(

Y aurait pas quelqu'un qui ait déjà rencontré le même problème ? Et si oui bien sûr, s'il a réussi à le résoudre...

arnakor

> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Ca peut venir de beaucoup de chose. Vérifie, avec des routine de traitement d'erreur (on error goto etiquette) à quel niveau ca bloque, ou en mettant des points d'arrêt. Logiquement, ca doit venir avant le End, car ce mot clé lance la libération automatique de la mémoire utilisée par le prog. (en théorie ;-)
> >
> > DARK SIDIOUS
> >
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > Salut,
> > >
> > > voilà, j'ai fait un prog en VB mais il y a maintenant un terrible plantage lorsqu'on le quitte. Qu'on l'éxécute à partir de VB ou du .exe généré, c'est pareil, ça bloque et il faut faire fin de tâche avec ctrl alt suppr.
> > > Je pense que ça peut venir de pas mal de trucs mais si vous pouviez me donner quelques pistes ça serait vraiment cool !
> > >
> > > Ca serait pas une question de libération de mémoire à la fermeture ? Si oui y aurait pas un moyen de libérer tout ce dont le prog s'est servi ?
> > >
> > > Enfin chepa, je m'y connais pas en fermeture de prog, d'habitude on met End et ça quitte sagement !
> > >
> > > Please help me !!
> > >
> > > Merci d'avance, :)
> > > @+
> > > arnakor
> > >
> >
>
0
arnakor Messages postés 13 Date d'inscription samedi 2 mars 2002 Statut Membre Dernière intervention 28 décembre 2006
6 janv. 2003 à 15:53
Oh, j'ai cerné le problème. Il ne restait en fait plus qu'une seule solution : c'était dans mon Form_Load que ça clochait. Cependant je n'arrive pas à le résoudre ! Voici la procédure coupable :

Private Sub vidert()
Dim i As Long
For i = 0 To 32000
t(i) = ""
tnom(i) = ""
ttitle(i) = ""
tpays(i) = ""
telo(i) = ""
tparties(i) = ""
Next
End Sub

Note importante : le programme parvient tout à fait à la réaliser, le point d'arrêt sur End Sub est OK.
Alors est-ce que ça demande trop de mémoire tous ces tableaux de 32000 chaines de caractères ? C'est la question que je me pose et que je vous pose !

Merci d'avance,
arnakor
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
6 janv. 2003 à 16:04
Ah ben forcément, imagine, une variable string occupe le n fois le nombre de caractères. Donc, 32 000 * nombre de caractères !!!
C'est énorme ! Pourquoi utilise tu des variables aussi grosses ? Sert-toi plutôt d'une base de données !

DARK SIDIOUS
0
arnakor Messages postés 13 Date d'inscription samedi 2 mars 2002 Statut Membre Dernière intervention 28 décembre 2006
6 janv. 2003 à 16:10
Pourtant je les remplis de chaines vides là ! Enfin bref, si je supprime cette proc il se trouve que le prog marche quand même, bien que je remplisse tous les tableaux avec des vraies chaines cette fois...
Une base de données ? Arg ça doit pas être forcément évident, j'ai de la chance que ça fonctionne !

Merci @+
8-)
0
Rejoignez-nous