View Single Post
Old 17-02-2003, 15:10   #46
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Ho visto che puoi specificare il numero dei byte da leggere !!!
Codice:
Dim tmp As Byte(4)
MSComm1.InputLen = 4
MSComm.InputMode = comInputModeBinary
tmp = MSComm1.Input
'ora ti devi ricostruire l'intero che andrai a mettere in num (non lo scrivo)

MSComm1.InputLen = num
If MSComm1.InputCounter < num Then
  'qui dovresti attendere che arrivino gli altri dati (basta mettere un'attesa ad esempio di 1 decimo di secondo)
  'non conviene fare un ciclo perchè ti bloccherebbe facilmente il programma
  'In VB non so come si fa al limite ti dico come si usa l'API Sleep...
If MSComm1.InputCounter < num Then 'ora ricontrolliamo di nuovo
  'nel caso che ancora non siano sufficienti blocchi il programma e generi un errore

'quindi ora siamo sicuri che ci siano i byte da leggere
buf = MSComm1.Input 'ed hai letto il buffer
'Ora chiami Writefile e scrivi i dati letti nel file...
cionci è offline   Rispondi citando il messaggio o parte di esso