Esempio dal mio software:'in un servizio: Sub Process_Globals Dim SockECR As Socket Dim ECRStream As AsyncStreams End Sub Sub Service_Create SockECR.Initialize("SockECR") SockECR.Connect("192.168.0.111", 1723, 5000) End Sub Sub SockECR_Connected(Successful As Boolean) If Successful Then If SockECR.Connected Then ECRStream.Initialize(SockECR.InputStream, SockECR.OutputStream, "TreiStream") End If End If End Sub Sub TreiStream_Error ECRStream.Close End Sub Sub TreiStream_Terminated ECRStream.Close End Sub Sub TreiStream_NewData (Buffer() As Byte) 'Per Eventuale Risposta dalla macchina End Sub
Poi, per mandare i dati alla stampante:
B4X:ECRStream.Write(StringaDaMandare.GetBytes("UTF8"))
Volendo si può usare AsyncStreamsText al posto di AsyncStreams per mandare direttamente Testo invece di Bytes.
Preferisco quello che ho fatto per Epson, RCH e Custom.
Ringrazio molto
Questo e' il codice di base da usare per spedire/ricevere
Vorrei evitare di mantenere aperta la connessione, ma aprire, spedire, chiudere
E quindi, in base alla vostra esperienza, entro quanto arriva un eventuale messaggio di ritorno dall'ecr?
Nel senso, quanto tempo dopo aver inviato il comando posso attendere, cercando di mantenere questo tempo il minore possibile?
1 secondo basta?
5 secondi?