Italian wow! mi diventa sempre più grande

amorosik

Expert
Licensed User
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?
 

picenainformatica

Active Member
Licensed User
Longtime User
Basta poco, 300/500 ms. La 3i è, di solito, molto veloce.
Curiosità: come la usate adesso?
 

amorosik

Expert
Licensed User
Basta poco, 300/500 ms. La 3i è, di solito, molto veloce.
Curiosità: come la usate adesso?

In che senso?
Come stampante per gli scontrini fiscali
Da gestionale su pc si inseriscono gli articoli, quantita', eventuali sconti, alla fine se il pagamento e' via "SCONTRINO FISCALE" si avvia la procedura di stampa verso l'ecr
In che altro modo si potrebbe usare?
 

picenainformatica

Active Member
Licensed User
Longtime User
Con quale tecnica? Uno stream socket o un software esterno?
Oppure usate qualche driver di terze parti?
 

amorosik

Expert
Licensed User
Prima provero' il codice indicato sopra per imbastire una sistema minimo funzionante
Il definitivo credo sara' l'equivalente del codice sopra ma in c#
Come tendenza generale, meno 'pezzi' esterni usiamo e meglio e', con l'obiettivo di avere il controllo diretto su tutte le procedure
 

picenainformatica

Active Member
Licensed User
Longtime User
Lo stream socket è come la seriale...
Quindi tutte le stampanti in XoXoff? Nessuna con protocollo nativo?
 

picenainformatica

Active Member
Licensed User
Longtime User
E' un peccato, RCH, Custom ed Epson offrono informazioni aggiuntive ed un miglior controllo sugli errori con il protocollo specifico.
D'altro canto, usando XonXoff, visto che tutte hanno seguito il dialetto Custom, basta implementarne una che le hai fatte tutte....
 

picenainformatica

Active Member
Licensed User
Longtime User
Parlo di comunicazione seriale o socket, ognuno con il proprio protocollo.
 
Top