Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Impresión
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 31-01-2005
anduj anduj is offline
Miembro
 
Registrado: may 2003
Ubicación: Valencia
Posts: 10
Poder: 0
anduj Va por buen camino
Unhappy Imprimir a puerto serie

Hola amigos del foro.

Llevo unos días peleando con una Epson TM L90 y de momento gana ella, pero no me doy por vencido y necesito vuestra ayuda.

Imprimo directamente por el puerto serie, haciendo:
AssignFile(f,com1);
Rewrite(f);
Writeln(f,'------------------------');
CloseFile(f);

El caso es que como no me imprimia, empecé a hacer pruebas y descubrí que si configuraba el puerto desde una ventana de MS-DOS con "mode com1 19200 n,8,1" y despues direccionaba un archivo a la impresora todo funcionaba correctamente. Incluso desde la aplicación en Delphi ya no habia ningún problema. Revisé 200 veces la configuración del puerto serie de mi W2000 y no habia nada que estubiese incorrecto así que para solucionar el problema decidí llamar a "mode com1 ..." con un winexec.

Todo funcionaba de maravilla hasta que un PC con Win98 se cruzó en mi camino. En Win98 no hay forma de que funcione. Aunque si direccionamos un fichero a la impresora lo hace bien. El problema lo encuentro al hacerlo desde Delphi.

Yo creo que el problema es que el puerto no acaba de estar bien configurado, pero no se de que forma lo puedo configurar sin llamar a Winexec.
¿Alguno de vosotros a sufrido estos males en algún momento?
La verdad es que desespera que en una máquina todo funcione bien, aunque sea con un parche, y en otra no haya manera.

Muchas gracias por la atención que me habeis prestado
Responder Con Cita
  #2  
Antiguo 01-02-2005
Avatar de defcon1_es
defcon1_es defcon1_es is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuenca - España
Posts: 533
Poder: 21
defcon1_es Va por buen camino
Hola,
creo que el fallo está en la línea de AssignFile.

Debe ser:
Código Delphi [-]
AssignFile(f, 'COM1'); //Entre comillas

Salu2.
__________________
Progress Openedge
https://abevoelker.com/progress_open...dered_harmful/


Delphi forever...
Responder Con Cita
  #3  
Antiguo 01-02-2005
anduj anduj is offline
Miembro
 
Registrado: may 2003
Ubicación: Valencia
Posts: 10
Poder: 0
anduj Va por buen camino
Gracias defcon1

Lo de las comillas fue un error mio al escribir el mensaje, en el código fuente si que están.
Responder Con Cita
  #4  
Antiguo 12-02-2005
carcaLincoln carcaLincoln is offline
Registrado
 
Registrado: ene 2005
Posts: 3
Poder: 0
carcaLincoln Va por buen camino
Cita:
Empezado por anduj
Hola amigos del foro.

Llevo unos días peleando con una Epson TM L90 y de momento gana ella, pero no me doy por vencido y necesito vuestra ayuda.

Imprimo directamente por el puerto serie, haciendo:
AssignFile(f,com1);
Rewrite(f);
Writeln(f,'------------------------');
CloseFile(f);

El caso es que como no me imprimia, empecé a hacer pruebas y descubrí que si configuraba el puerto desde una ventana de MS-DOS con "mode com1 19200 n,8,1" y despues direccionaba un archivo a la impresora todo funcionaba correctamente. Incluso desde la aplicación en Delphi ya no habia ningún problema. Revisé 200 veces la configuración del puerto serie de mi W2000 y no habia nada que estubiese incorrecto así que para solucionar el problema decidí llamar a "mode com1 ..." con un winexec.

Todo funcionaba de maravilla hasta que un PC con Win98 se cruzó en mi camino. En Win98 no hay forma de que funcione. Aunque si direccionamos un fichero a la impresora lo hace bien. El problema lo encuentro al hacerlo desde Delphi.

Yo creo que el problema es que el puerto no acaba de estar bien configurado, pero no se de que forma lo puedo configurar sin llamar a Winexec.
¿Alguno de vosotros a sufrido estos males en algún momento?
La verdad es que desespera que en una máquina todo funcione bien, aunque sea con un parche, y en otra no haya manera.

Muchas gracias por la atención que me habeis prestado
Hola queria hacerte una pregunta sabes como saber cuando la impresora termino de imprimir el trabajo, porque tengo que hacer una aplicacion que imprime un recibo N veces y el usuario puede cancelar o pausar la impresion.

SAludos y mil gracias
Marcos
Responder Con Cita
  #5  
Antiguo 25-02-2005
anduj anduj is offline
Miembro
 
Registrado: may 2003
Ubicación: Valencia
Posts: 10
Poder: 0
anduj Va por buen camino
Perdona que no te haya contestado antes, pero he estado desconectado unos días.

Mi problema se solucionó utilizando un componente de puerto serie que descargué de la superpage. Configuré el puerto y a funcionar.

No tengo respuesta a lo que planteas ya que mando caracteres al puerto serie y la salida es automática. No da tiempo a cancelar la impresión de ninguna forma ya que en pocos segundos la impresora a tirado el rollo entero.

Voy a mirar un proceso que escribí hace tiempo para ver si puedo sacar alguna idea. Si encuetro algo te vuelvo a escribir.

Saludos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 12:39:01.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi