Fin du programme vb6

HALOSOURCE Messages postés 3 Date d'inscription mardi 21 décembre 2004 Statut Membre Dernière intervention 4 juin 2010 - 4 juin 2010 à 12:28
HALOSOURCE Messages postés 3 Date d'inscription mardi 21 décembre 2004 Statut Membre Dernière intervention 4 juin 2010 - 4 juin 2010 à 15:41
bonjour
voila c'est simple je lance la commande "end" mais le programme vb6 ne quitte pas immediatement.il met du temp avant de sortir
toute en shachant que j'utilise des APIs dans mon programme et avant de sortir j'ai initialiser mes objets a "NOTHING"
comment je fais pour eliminer cette lenteur qui me pose problème ?
exemple :
'''declaration
Dim APICapture As New BFICAPTUREAPILib.APICapture
Dim Cheque As New BFIRESSOURCEAPILib.Cheque
'''utilisation des apis
ret = APICapture.InitScanner(1)
ret = APICapture.Capture(Val(PositionEndos), txtEndos.Text, Cheque)
'''la fin
Set APICapture = Nothing
Set Cheque = Nothing
End

4 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
4 juin 2010 à 13:06
Salut
"End" est à bannir : utilise Unload (Unload Form1 ou Unload Me)
Mais cela ne changera rien à ton problème.

"il met du temp avant de sortir" : Combien ?

Est-ce que ce sont les lignes = Nothing qui prennent du temps ?

Avant de quitter ton application, quelle quantité de mémoire utilise t-il ? (Voir gestionnaire des tâches) --> Voir à vider les tableaux si tu en as (avec Erase)

De quel quantité de mémoire disposes-tu sur ta machine ?

En mode IDE et en mode compilé : y a t-il une différence ?

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
HALOSOURCE Messages postés 3 Date d'inscription mardi 21 décembre 2004 Statut Membre Dernière intervention 4 juin 2010
4 juin 2010 à 15:02
salut
voila les reponse a tes questions esperons quand on va trouver la solution.
- il met entre 12 et 13 seconde pour sortir de programme (c'est enorme).
- ce n'est pas les ligne nothing qui prenne du temp.c'est la commande "end" et j'ai deboguer pas mal de fois pour saisir le probleme.
- avant de quitter mon application la memoire utilisée est de l'ordre de entre 21000 KO et 22000 KO.
- la machine 2.2 GHZ le process et 1G de RAM.
-il n'ya pas de difference en mode IDE et mode compilé.
j'attend une solution
merci d'avance.
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
4 juin 2010 à 15:31
Oui, plus de 10 secondes, c'est énorme.
22 Mo, c'est très raisonnable (sic, on disait pas ça il y a 20 ans).
Machine correcte, sans surprise à attendre.
IDE-EXE : Ok
Mais End reste quand même à éviter.
A propos du 'démontage' des objets, utilises-tu des classes ?

BFICAPTUREAPILib : De quoi s'agit-il ?
Un Com_Server genre Excel ou SnagIt ?
Je pense que c'est vers cet objet qu'il faut chercher des solutions.
Si tu charges des objets complexes, assure toi que tu les as correctement démontés/déchargés/closés/Unloadés, cela peut arranger les choses.
0
HALOSOURCE Messages postés 3 Date d'inscription mardi 21 décembre 2004 Statut Membre Dernière intervention 4 juin 2010
4 juin 2010 à 15:41
BFICAPTUREAPILib est une librairie (.dll)
installer sur la machine et referencé dans le projet.
0
Rejoignez-nous