FRatvks
Messages postés52Date d'inscriptionmercredi 12 mars 2003StatutMembreDernière intervention 2 octobre 2009
-
11 mai 2007 à 19:05
Gobillot
Messages postés3140Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention11 mars 2019
-
11 mai 2007 à 19:48
Bonsoir,
j'ai une appli ou j'envoi des fichiers binaire (un firmware) a travers un modem et qui doivent etre "traité avant envoi .
Comme le temps de transfert est long je veux faire le chargement et traitement pendant que mon interlocuteur (une machine) reçois et traite mon paquet pour me demander le paquet suivant (c'est le protocole qui a été defini comme ca !)
Test avec 2 textbox dont le deuxieme en mutligne et scroll
Le premier sert a mettre le fichier avec son lien, le deuxieme a l'afficher a l'ecran
On peut "passer" n'importe qoui et donc un petit texte par exemple qui sera facle a relire ;-))
en mode "standard" ca ca marche nickel
Private Sub Command1_Click()
Text2 = ""
Message = Text1.Text
'OUVRE LE FICHIER EN LECTURE BINAIRE
message_filenum = FreeFile
Open Message For Binary Access Read As #message_filenum
Do While Not EOF(message_filenum)
GoSub Precharge 'charge le premier paquet
info2send$ = preloaded$ 'Swap le paquet pour l'envoi
Text2.Text = Text2.Text & info2send$
'la j'attend le "AK" de la machine avant de renvoyer la trame suivante mais peu imprte pour l'exemple
Loop
Close #message_filenum
Exit Sub
'*******************************************************************************************************************************
'************* SOUS PROGRAMMES **********************
'*******************************************************************************************************************************
Precharge: ' on precharge le bloc suivant pendant l'envoi du precedent pour gratter 1 peu de temps plutot que d'attendre le AK
data_line = Input(25, #message_filenum) ' lire 25 octet
' la je fais mon traitement mais peut importe
preloaded$ = data_line
Return
End Sub
Mais si je fais ca ca coupe la fin de mon fichier :
Private Sub Command1_Click()
Text2 = ""
Message = Text1.Text
'OUVRE LE FICHIER EN LECTURE BINAIRE
message_filenum = FreeFile
Open Message For Binary Access Read As #message_filenum
GoSub Precharge 'charge le premier paquet
info2send$ = preloaded$ 'Swap le paquet pour l'envoi
Do While Not EOF(message_filenum)
GoSub Precharge 'charge le paquet suivant
Text2.Text = Text2.Text & info2send$
info2send$ = preloaded$ 'Swap le paquet pour l'envoi
Loop
Close #message_filenum
Exit Sub
'*******************************************************************************************************************************
'************* SOUS PROGRAMMES **********************
'*******************************************************************************************************************************
Precharge: ' on precharge le bloc suivant pendant l'envoi du precedent pour gratter 1 peu de temps plutot que d'attendre le AK
data_line = Input(25, #message_filenum) ' lire 25 octet
preloaded$ = data_line
Return
End Sub
Je ne comprend pas pourquoi ca me bouffe la fin de mon fichier dans le deuxieme mode !
Quelq'un a une idée pour corriger ce pb ?
Gobillot
Messages postés3140Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention11 mars 201934 11 mai 2007 à 19:48
Salut,
à mon avis c'est le Text2 qui n'est pas bon
ps: pour un fichier binaire Get et préférable à Input:
Get
#message_filenum, ,
data_line (data_line doit faire 25 caractères)
Open Message For Binary Access Read As #message_filenum
GoSub Precharge
info2send$ = preloaded$
Text2.Text = info2send$
Do While Not EOF(message_filenum)
GoSub Precharge
info2send$ = preloaded$
Text2.Text = Text2.Text & info2send$
Loop