Multitache avec Readfile (API)

pmaze Messages postés 15 Date d'inscription vendredi 14 novembre 2003 Statut Membre Dernière intervention 2 mars 2007 - 14 mai 2004 à 15:43
pmaze Messages postés 15 Date d'inscription vendredi 14 novembre 2003 Statut Membre Dernière intervention 2 mars 2007 - 14 mai 2004 à 19:26
Salut à tous,

Je lis un fichier avec l'API Readfile car plus rapide que la méthode Open de VB.
Dans l'interface, j'ai un label rattaché au timer que j'incrémente ttes les secondes pour afficher le temps de traitement.

PB : J'ai un fichier de 80 Mo; lorsque ReadFile traite le fichier, le compteur se fige car Readfile prend la main.

Qqu'un aurait-il une idée ou une suggestion pour me dépatouiller ?

Merci d'avance
zorro 8-)

3 réponses

crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
14 mai 2004 à 16:28
A ma connaissance, les API bloquent totalement le code VB et je n'y connait pas de parade ! Y va falloir utiliser "Open" si tu veux conserver ton compteur !
A moins qu'il n'exist eune vers de ReadFile avec une fonciton de CallBack, mais je ne la connais pas !
Si Dark Sidious est dans le coin, il va te trouver cela vite fait !

Christophe R.
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
14 mai 2004 à 17:10
ReadFile peut s'utiliser en asynchrone.
Il faut ouvrir le fichier avec le flag FILE_FLAG_OVERLAPPED, fournir l'adresse d'une structure OVERLAPPED au dernier param de ReadFile et avoir correctement initialise avant cette structure, la fonction callback y compris.
Regarde MSDN fournit un mini exemple, bien entendu en C, a toi de traduire.

ciao...
BruNews, Admin CS, MVP Visual C++
0
pmaze Messages postés 15 Date d'inscription vendredi 14 novembre 2003 Statut Membre Dernière intervention 2 mars 2007
14 mai 2004 à 19:26
Ok, merci à tous les 2 pour la réactivité et les suggestions, je vais jeter un coup d'oeil à MSDN, bien que le C ne soit plus ma tasse de thé.

Autrement, je repasserai sur de l'OPEN, mais bonjour les perfs !

zorro 8-)
0
Rejoignez-nous