Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-10-2003
jhonarevalo jhonarevalo is offline
Registrado
 
Registrado: sep 2003
Posts: 4
Poder: 0
jhonarevalo Va por buen camino
Arrow Problemas con la Impresion

Estoy imprimiendo directamente sin pasar por Windows con la siguiente rutina que la tome de esta pagina:

Var
MyPrinter: TextFile;
begin
AssignFile(MyPrinter,'LPT1');
System.Rewrite(MyPrinter);
Writeln(MyPrinter, Cadena);
System.CloseFile(MyPrinter);
end;
mi problema es que solo me imprime 10 lineas cuando son mas me da el siguiente error
I/O error 231
en realidad no se que significa esto y no se como resolverlo, agradeceria toda la ayuda que me puedan dar....
Responder Con Cita
  #2  
Antiguo 17-10-2003
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
La verdad no recuerdo que quiere decir el código de error 231, pero probablemente es porque la impresora está fuera de línea o algo asi...

Podes implementar la impresión de una forma un poco mas segura de esta forma:

Código:
Procedure PrintLine(printer : TextFile; Line : String);

Var
  IOR : Integer;
  Cancelado : Boolean;

Begin
  Cancelado := False;
  repeat
    {$I-}
    writeln(printer, Line);
    IOR := IOResult;
    {$I+}
     if IOR <> 0 Then
      Cancelado := MessageDlg('Error al imprimir, desea reintentar?', [mbYes, mbNo], 0) = mrNo;
  until (IOR = 0) or (Cancelado);
  if Cancelado Then
    Raise Exception.Create('Impresión cancelada por el usuario!');
End;

Var
  printer : TextFile;

Begin
  AssignFile(Printer, 'lpt1');
  rewrite(Printer);
  PrintLine(Printer, 'Hola esto es una prueba!');
  PrintLine(Printer, '1');
  PrintLine(Printer, '2');
  ..
  PrintLine(Printer, '999');
  PrintLine(Printer, '1000');
  CloseFile(Printer);
End.
Es simplemente una idea... podes desarrollarla un poco mas a tu gusto...

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
Respuesta



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 18:24:40.


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