Eviter de geler l'application

cs_ABF Messages postés 227 Date d'inscription samedi 21 mai 2005 Statut Membre Dernière intervention 26 avril 2012 - 22 juin 2007 à 13:57
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 - 25 juin 2007 à 07:57
Bonjour,

J'ai développé une petite appli mais j'ai un problème :
Lorque je lance ma boucle (plus de 5000) de traitement de chaine et chargement de fichier, cela est long (normal) mais l'appli ce bloque jusqu'à ce qui arrive au DoEvents.

N'y a t'il pas une méthode pour ne pas geler l'app durant une execution, appel d'api... ?

Merci

++

10 réponses

cs_ABF Messages postés 227 Date d'inscription samedi 21 mai 2005 Statut Membre Dernière intervention 26 avril 2012
22 juin 2007 à 13:59
Notemment pour pouvoir mettre une barre de progression !
0
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
22 juin 2007 à 14:03
Salut,
Lance ton traitement de chaine et de chargement de fichier dans un second thread, car je crois que c'est faisaible en VB.NET.

Sinon pour éviter de geler une appli il suffit de mettre le PC au soleil (=> je suis déjà dehors merci)

@+: Ju£i?n
Pensez: Réponse acceptée
0
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
22 juin 2007 à 17:59
Utilise le controle BackGroundWorker : tu peux reporter en % pour la barre de progression et ça s'execute dans un thread différent
0
cs_ABF Messages postés 227 Date d'inscription samedi 21 mai 2005 Statut Membre Dernière intervention 26 avril 2012
22 juin 2007 à 19:32
SAlut,

jrivet > lol, je suis en vb6 (aime pas dot net) :)
allthew3 > en fait ce n'ai pas que pour la barre de progression : c'est une anim perso avec des image mais je veux dire par la que pendant la boucle tous le programme reste bloquer "geler" pour faire rire jrivet :)

Faut -il gérer le multi-thread et comment dans cette exemple car toute les fonctions sont dans un module à par de la feuille principale

Merci

++
0

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

Posez votre question
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
22 juin 2007 à 19:36
tu es en VB6 ?

sinon un délégué pour pouvoir acceder à l'interface utilisateur sans erreur ...
0
cs_ABF Messages postés 227 Date d'inscription samedi 21 mai 2005 Statut Membre Dernière intervention 26 avril 2012
22 juin 2007 à 19:45
Oui je suis en VB6 et pour l'instant je ne veux pas passer sous .net
Un délégué ?
0
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
22 juin 2007 à 20:46
je peux pas te donner d'exemple de code je fais uniquement des languages .NET désolé

Delegate Sub et Invoke()  tu connais pas ? (je veux bien faire un exemple en VB.net mais tu me comprendras peut-être pas)
0
cs_ABF Messages postés 227 Date d'inscription samedi 21 mai 2005 Statut Membre Dernière intervention 26 avril 2012
22 juin 2007 à 20:49
ben je fait un peu de dot net pour le boulot mais en VB 6 ya pas !
Faudrait que j'essaie le multi-thread :)

Merci
0
allthew3 Messages postés 551 Date d'inscription samedi 8 janvier 2005 Statut Membre Dernière intervention 12 avril 2008 2
23 juin 2007 à 10:05
pas de délégué en VB6 -_-'

sinon ouais il te reste le multithreading (soit le controle BackGroundWorker si ça existe en VB6, soit un thread "nature" ...)

++
0
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
25 juin 2007 à 07:57
Salut,
>[auteurdetail.aspx?ID=516493 ABF] si tu es en VB6 pourquoi avoir posté ta question ici? [infomsgf_VB-NET-VB-2005_40.aspx VB.NET et VB 2005] / [infomsgt_DIVERS_221.aspx Divers] / [infomsgt_TRUCS-ASTUCES_243.aspx Trucs & Astuces]

Si tu avais posté dans la section correcte, cela t'aurais évité de perdre du temps (et nous aussi par la même occasion).

@+: Ju£i?n
Pensez: Réponse acceptée
0