Caracteres de escape para la impresora

Caracteres de escape para la impresora

Postby softruz » Fri Mar 02, 2007 12:21 pm

Muy buenas, ¿alguien sabe como puedo mandar el caracter de escape:
"ESC C 42" a la impresora STAR DP8340S?
me dice que le tengo que mandar "ESC C n" (donde n es el número de líneas) y lo que es lo mismo en hexadecimal: "(1B)H (43)H n"

decirme como puede mandarlo gracias.
Gracias.

Un Saludo.
softruz
 
Posts: 485
Joined: Fri Feb 09, 2007 10:34 am

Postby pymsoft » Fri Mar 02, 2007 12:51 pm

prueba con: CHR(27) + "C5"

donde 5 es el numero de lineas
Pedro Gonzalez
User avatar
pymsoft
 
Posts: 383
Joined: Tue Oct 11, 2005 1:01 pm
Location: Savona - Italia

Postby Biel EA6DD » Fri Mar 02, 2007 2:37 pm

Tal cual te comentan en el post anterior, pero ten en cuenta que n (nº de lineas) es el valor ascii del caracter que le pasas. P.e. 48 lineas seria
Code: Select all  Expand view
Chr(27)+"C0"
o si mas claro
Code: Select all  Expand view
Chr(27)+"C"+Chr(48)
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
User avatar
Biel EA6DD
 
Posts: 682
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca

No funciona

Postby softruz » Fri Mar 02, 2007 5:20 pm

Muy buenas, he probado de todo y no funciona sigue imprimiendo 33 líneas de dicha impresora no que se hacer, si alguien sabe como mandar el código de escape o configurar la STAR DP8340S, decirme algo.

Gracias.

Un Saludo.
softruz
 
Posts: 485
Joined: Fri Feb 09, 2007 10:34 am

Postby Biel EA6DD » Fri Mar 02, 2007 5:30 pm

Un cliente mio tiene Star Dp8340S y el código que antes te he puesto funciona para el cambio de lineas.

Tu quieres poner la impresora a 42 lineas, entonces seria

Code: Select all  Expand view
Chr(27)+"C*"
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
User avatar
Biel EA6DD
 
Posts: 682
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca

Postby softruz » Fri Mar 02, 2007 5:44 pm

Me prodrías decir el código para enviar el codigo de escape, mira yo creo un fichero y en la primera línea pongo:

WriteByte( cConexion,Chr(27)+"C*")

es decir, mi codigo es:

local cConexion := CreateFile( "COM8:",GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL )
if (cConexion==-1)
MsgStop('No hay conexion con la impresora',vTitulo)
else
WriteByte( cConexion,Chr(27)+"C*")
for n = 1 to Len( cTexto )
WriteByte( cConexion, Asc( SubStr( cTexto, n, 1 ) ) )
next
CloseHandle( cConexion )

¿Está bien?¿Debería funcionar?
Gracias

Un Saludo.
softruz
 
Posts: 485
Joined: Fri Feb 09, 2007 10:34 am

Postby Biel EA6DD » Fri Mar 02, 2007 7:42 pm

Creo que no es correcto, en principio entiendo que writebyte envia byte a byte al puerto de comunicaciones.

Prueba de la siguiente manera.
Code: Select all  Expand view
//WriteByte( cConexion,Chr(27)+"C*")
cTexto:=Chr(27)+"C*"+cTexto
for n = 1 to Len( cTexto )
   WriteByte( cConexion, Asc( SubStr( cTexto, n, 1 ) ) )
next
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
User avatar
Biel EA6DD
 
Posts: 682
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca

No me funciona

Postby softruz » Mon Mar 05, 2007 8:29 am

Muy buenas, no se que hacer la impresora no funciona, he llamado al servicio técnico y dicen que debe ser de programación y yo no hago nada más que el código anterior, decirme que puedo hacer, es decir, si hay otra forma de comunicarse con la impresora, otra forma de imprimir, no se algo para que esto funcione.

También he probado con otra impresora nueva para ver si es que estuviese rota, y también pasa lo mismo.

Bueno, gracias de antemano.

Un Saludo.
softruz
 
Posts: 485
Joined: Fri Feb 09, 2007 10:34 am

Postby Biel EA6DD » Mon Mar 05, 2007 9:04 am

Pues no se que decirte, el codigo anteriro a mi me funciona. Pro probar, pero es lo mismo.

Code: Select all  Expand view
WriteByte(cConexion,27)
WriteByte(cConexion,Asc('C')
WriteByte(cConexion,48)  //Lineas
for n = 1 to Len( cTexto )
   WriteByte( cConexion, Asc( SubStr( cTexto, n, 1 ) ) )
next


Puedes probar de imprimir con cable directo, entiendo que lo haces via Bluetooth.
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
User avatar
Biel EA6DD
 
Posts: 682
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca

No se por que no

Postby softruz » Mon Mar 05, 2007 9:38 am

¿Sabes algún caracter de escape que tengamos que complementar a ese? es decir, lo mismo tengo que reiniciar la impresora, limpiar buffer, no se algo que complemente que haga que funcione de una vez.

Gracias.

Un Saludo.
softruz
 
Posts: 485
Joined: Fri Feb 09, 2007 10:34 am

Postby softruz » Mon Mar 05, 2007 9:53 am

Lo hemos probado también con el cable directo y no funciona, es de la impresora que no coje el caracter de escape
softruz
 
Posts: 485
Joined: Fri Feb 09, 2007 10:34 am

Muchas gracias

Postby softruz » Tue Mar 06, 2007 11:32 am

Muy buenas, ya ha solucionado el problema de la impresión muchas gracias por todo.
softruz
 
Posts: 485
Joined: Fri Feb 09, 2007 10:34 am

Postby Biel EA6DD » Tue Mar 06, 2007 12:00 pm

Por curiosidad, cual ha sido la solución.
Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
User avatar
Biel EA6DD
 
Posts: 682
Joined: Tue Feb 14, 2006 9:48 am
Location: Mallorca


Return to FiveWin para Pocket PC

Who is online

Users browsing this forum: No registered users and 8 guests