WriteByte muy lento enviando por bluetooth

Post Reply
User avatar
Arturo Lopesoria
Posts: 84
Joined: Fri Aug 10, 2007 1:47 am
Location: Mexico DF
Contact:

WriteByte muy lento enviando por bluetooth

Post by Arturo Lopesoria »

Amigos del foro:

Tengo una impresora Zebra MZ220 Bluetooth conectada por el puerto seria de salida Com5 al bluetooth. El problema es que WriteByte se tarda demasiado en imprimir. Sospecho que hay que configurar el puerto, Intenté hacerlo, pero no lo estoy haciendo bien.

El string a imprimir tiene un promedio de 300 chrs, Sí se imprime, pero para imprimirse tarda 2 minutos!!
he aquí el código:

// cText es una cadena formateada con máximo
// 400 caracteres imprimibles.

hOut := CreateFile( "COM5:",GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL )
IF hOut==-1
MsgStop("Port Not Found")
return nil
endif

FOR i = 1 TO Len( cText )
WriteByte( hOut, Asc(SubStr( cText, i, 1 ) ) )
NEXT

USE

CloseHandle( hOut )
Arturo LS
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Arturo,

Prueba con este cambio:

Code: Select all

FOR i = 1 TO Len( cText ) 
   WriteByte( hOut, Asc(SubStr( cText, i, 1 ) ) ) 
   SysRefresh()
NEXT
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Arturo Lopesoria
Posts: 84
Joined: Fri Aug 10, 2007 1:47 am
Location: Mexico DF
Contact:

Post by Arturo Lopesoria »

Lo voy a probar y te comento, gracias!
Antonio Linares wrote:Arturo,

Prueba con este cambio:

Code: Select all

FOR i = 1 TO Len( cText ) 
   WriteByte( hOut, Asc(SubStr( cText, i, 1 ) ) ) 
   SysRefresh()
NEXT
Arturo LS
User avatar
Arturo Lopesoria
Posts: 84
Joined: Fri Aug 10, 2007 1:47 am
Location: Mexico DF
Contact:

Post by Arturo Lopesoria »

Antonio:
Ya lo probé con SysRefresh() y el problema sigue presente. Probablemente hay una mejora, lo que tradaba 3 minutos hoy tarda 2 minutos, para ser un Ticket con encabezado, 2 partidas y un total (300 caracteres) sl problema sigue siendo grande:
Arturo LS
Simon
Posts: 105
Joined: Thu Oct 20, 2005 12:29 pm
Location: Maracaibo, Venezuela.

Re: WriteByte muy lento enviando por bluetooth

Post by Simon »

hola arturo estamos por comprar esa impresora el problema persiste o se soluciono ?

Gracias.
User avatar
Arturo Lopesoria
Posts: 84
Joined: Fri Aug 10, 2007 1:47 am
Location: Mexico DF
Contact:

Re: WriteByte muy lento enviando por bluetooth

Post by Arturo Lopesoria »

El problema se soluciono, la velocidad de impresion es aceptable.

Hasta donde recuerdo Antes Utilizabamos WriteByte() y era bastante lento
y la solucion fue usar la funcion WriteFile() del lenguaje C desde un PRAGMA
mandando porciones de no mas de 80 caracteres a la vez, aunque ese modulo no lo hice yo.

Puedes googlear y checar la documentación de WriteFile()
Saludos

Arturo.
Arturo LS
Simon
Posts: 105
Joined: Thu Oct 20, 2005 12:29 pm
Location: Maracaibo, Venezuela.

Re: WriteByte muy lento enviando por bluetooth

Post by Simon »

Gracias Arturo.
Post Reply