Ciao a tutti,
ho un problema con una stampante di etichette (Intermec PC43d).
Praticamente ogni tanto mi stampa correttamente l'etichetta, altre volte (anche subito dopo) me ne stampa mezza o una piccola parte. Mi hanno detto che forse questo è dovuto al fatto che si chiude la porta prima che tutti i dati siano stati trasmessi al buffer. Però ho notato che anche se elimino l'istruzione di chiusura della porta (MSComm1.PortOpen = False) rimane lo stesso problema.
Qualcuno può aiutarmi?
C'è il modo di controllare che tutti i dati siano stati trasmessi prima di chiudere la porta?
Grazie!
Codice:
codice:Private Sub cmdStampa_Click() If cboLotto.ListIndex = -1 Then MsgBox "Nessun codice lotto selezionato!" 'Else 'MsgBox "L'utente ha selezionato " & lstLotto.Text & "" End If If cboCertificato.ListIndex = -1 Then MsgBox "Nessun certificato selezionato!" 'Else 'MsgBox "L'utente ha selezionato " & lstCertificato.Text & "" End If Dim strBuff As String Dim PercorsoFile As String PercorsoFile = "C:\Users\Elena\Desktop\Output.prn" 'Leggo tutto il file in modalità binaria (la piu' veloce) e salvo il contenuto in una variabile stringa strBuff Open PercorsoFile For Binary As #1 strBuff = Space(LOF(1)) Get #1, , strBuff Close #1 'eseguo il replace delle parole che voglio modificare strBuff = Replace(strBuff, "LOTTO, CERTIFICATO", "" & cboLotto.Text & ", " & cboCertificato.Text & "") strBuff = Replace(strBuff, "Testo lotto", "Lotto: " & cboLotto.Text & "") strBuff = Replace(strBuff, "Testo certificato", "Certificato: " & cboCertificato.Text & "") 'sovrascrivo il vecchio file Open "C:\Users\Elena\Desktop\Output1.prn" For Binary As #1 Put #1, , strBuff Close #1 MSComm1.PortOpen = True MSComm1.Output = strBuff MSComm1.PortOpen = False End Sub

Rispondi quotando
