Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   Resolver excepcion Impresora (https://www.clubdelphi.com/foros/showthread.php?t=82249)

NEG1414 14-02-2013 16:36:06

Resolver excepcion Impresora
 
Buenas

Como puedo evitar la excepcion There is no default printer currently selected.... que sucede cuando uso Printer y no tengo la impresora instalada, ¿y si la tengo instalada y no conectada?

Gracias

Angel.Matilla 15-02-2013 09:44:46

Se me ocurren varias cosas:
1. En la propiedad Printers de TPrinter esta la lista de impresoras instaldas.
2. El tipico try...catch en el momento de imprimir el documento.

NEG1414 15-02-2013 12:24:03

Gracias por contestar...

Me podrias indicar cual seria la condicion para evitar la excepcion al no tener instalada la impresora..

¿Seria la misma si la impresora esta instalada y no encendida..?

Gracias Otra vez..

Angel.Matilla 15-02-2013 16:46:52

Cita:

Empezado por NEG1414 (Mensaje 455066)
Me podrias indicar cual seria la condicion para evitar la excepcion al no tener instalada la impresora..

¿Seria la misma si la impresora esta instalada y no encendida..?

Gracias Otra vez..

Lo primero que te decía del TPrinter lo tienes en Tips&Tricks de del Club Builder; yo he adaptado aquel código y lo he puesto así:
Código:

TPrinter *Printer = new TPrinter();
if  (Printer->Printers->Count > 0)
    QuickReport1->Print();

Esto sería para comprobar que hay alguna impresora instala. La segunda opción podría ser así:
Código:

try
{
    QuickReport1->Print();
}
catch(...)
{
    ShowMessage("La impresora no está disponible.");
}

Puedes combinar ambas.

juanelo 15-02-2013 19:10:51

El problema, es que casi estoy seguro que ese mensaje es precisamente el resultado de una excepcion que cachó el reporteador, y que desafortunadamente no propagó como exepcion (throw). Lo cual se traduce en que no tenemos nada que cachar como exepcion. Es mi teoria pero no estoy 100% seguro.
Saludos


La franja horaria es GMT +2. Ahora son las 15:49:48.

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