Visual Basic - enviar comandos escape a impresora ticket por usb

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

enviar comandos escape a impresora ticket por usb

Publicado por juan (2 intervenciones) el 25/09/2023 13:45:13
Buenas tardes , Alguien me podria poner un ejemplo de envio de comandos de escape , tengo que abrir un cajon portamonedas y lo que hago es imprimir una linea de caracteres asccii ,

Lo intento asi

Private Sub SimpleButton16_Click(sender As Object, e As EventArgs) Handles SimpleButton16.Click

Dim cajon As New PrintDocument
Dim prtSettings As New PrinterSettings
If prtSettings Is Nothing Then
prtSettings = New PrinterSettings
End If
prtSettings.PrinterName = My.Settings.impventa
cajon.PrinterSettings = prtSettings
' asignamos el método de evento para cada página a imprimir
AddHandler cajon.PrintPage, AddressOf cajon_printpage
' indicamos que queremos imprimir
cajon.Print()
End Sub

Private Sub cajon_printpage(ByVal sender As Object, ByVal e As PrintPageEventArgs)

Dim escape As String = Chr(27) + Chr(112) + Chr(0) + Chr(100) + Chr(200)


Dim prFont As New Font("Arial", 9, FontStyle.Regular)
e.Graphics.DrawString(escape, prFont, Brushes.Black, 0, 0)


e.HasMorePages = False
End Sub

Se que se puede pero no se como, agradecere cualquier ayuda , muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Andres Leonardo
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

enviar comandos escape a impresora ticket por usb

Publicado por Andres Leonardo (1798 intervenciones) el 29/09/2023 18:11:57
En visual Basic 6.0 lo hacia asi
la impresora compartida, en mi maquina y luego la invocabas asi.

Mira si puedes hacer esto


cajon.Print( Chr(27) + Chr(112) + Chr(0) + Chr(100) + Chr(200))



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Private Sub Command2_Click()
Open "\\MICOMPUTADORA\EPSONTM" For Output As #1
Print #1, Chr$(27); "@"; 'Initializes the printer (ESC @)
'Print #1, Chr$(27); "!"; Chr$(15); 'Specifies font A (ESC !)
'Print #1, Chr$(27) & Chr(120) & Chr(0) 'Draft
'Print #1, Chr$(27) & Chr(77) '12 CPI
'Print #1, Chr$(27) & Chr(80) '10 CPI
Print #1, Chr$(27); "!"; Chr$(15);   'Comprimido
'Print #1, Chr$(27) & Chr(18) 'Cancela COmprimido
Print #1, Chr$(27) & "!"; Chr$(14); 'Ancho Double
'Print #1, Chr$(27) & Chr(20) 'Cancela Ancho double
'Print #1, Chr$(27) & Chr(69) 'Negrita
'Print #1, Chr$(27) & Chr(70) 'Cancela negrita
'Print #1, Chr$(14) 'Agrandar
'Print #1, Chr$(18) 'Cancela Agrandar
 
Print #1, "TM-U210B $20.00"; Chr$(10);
Print #1, "TM-U210D $21.00"; Chr$(10);
Print #1, "PS-170   $17.00"; Chr$(10);
Print #1, Chr$(10); 'Line feeding (LF)
Print #1, Chr$(29); "V"; Chr$(66); Chr$(0); 'Feeds paper & cut
 
 
Close #1
 
 
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

enviar comandos escape a impresora ticket por usb

Publicado por juan (2 intervenciones) el 01/10/2023 21:03:19
Resuelto , un compañero ha publicado una clase llamada RawPrinterHelper
es de dominio publico y funciona perfectamente lo he conseguido , aunque cargo un poco con esta clase solo para eso pero va muy bien.
Espero que cualquiera que le haga falta le paso el codigo fuente , aunque buscandolo en la web se pueede bajar sin problemas
Gracias por el interés.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar