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 09-01-2018
darkerviti darkerviti is offline
Miembro
 
Registrado: May 2013
Posts: 14
Poder: 0
darkerviti Va por buen camino
Excepción al configurar impresora con QReport

Buenas,

Os comento el problema:

Tengo un informe con QuickReport en Delphi XE5, genero el informe sin problema, le doy a configurar impresora desde el preview, pero al cambiar la impresora (o el número de páginas o cualquier otra cosa) y aceptar me da una excepción y muchas veces me obliga a cerrar la aplicación.

He estado depurando el error, me lleva al archivo QRPrnSu.pas, dentro de :
Código:
function TQRCommonDialog.TaskModalDialog(DialogFunc: Pointer; var DialogData): Bool;
En concreto en la línea:
Código:
      Result := TDialogFunc(DialogFunc)(DialogData);
Espero que alguien pueda arrojar algo de luz al asunto.

Un saludo y muchas gracias.
Responder Con Cita
  #2  
Antiguo 09-01-2018
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: Aug 2007
Ubicación: Barcelona, España
Posts: 1.498
Poder: 13
duilioisola Tiene un aura espectacularduilioisola Tiene un aura espectacular
Te falta informarnos la excepción de que se trata.

Si se trata de
ERR_OUT_OF_MEMORY, te falta memoria.
ERR_OUT_OF_DISK_SPACE, te falta espacio en disco.
ERR_...
Responder Con Cita
  #3  
Antiguo 09-01-2018
Avatar de TOPX
TOPX TOPX is offline
Miembro
 
Registrado: May 2008
Ubicación: Bogotá
Posts: 506
Poder: 11
TOPX Va camino a la fama
También existe una excepción llamada EProgrammerNotFound.

Más información.
-
__________________
"constructive mind, destructive thoughts"
Responder Con Cita
  #4  
Antiguo 10-01-2018
darkerviti darkerviti is offline
Miembro
 
Registrado: May 2013
Posts: 14
Poder: 0
darkerviti Va por buen camino
Cita:
Empezado por duilioisola Ver Mensaje
Te falta informarnos la excepción de que se trata.

Si se trata de
ERR_OUT_OF_MEMORY, te falta memoria.
ERR_OUT_OF_DISK_SPACE, te falta espacio en disco.
ERR_...
Perdón por el empanamiento.

A ver, es un error de violación de acceso a memoria, despues de un día largo de depuración
y haciendo el mismo programa de prueba en delphi XE5 (el que falla) y en delphi 7 (que funciona)
solo he visto una diferencia, en el QRPrnSu.pas que comentaba todo es igual, pero cuando busco
la definición del tipo de DialogData (TPrintDlg) me llevan al archivo CommDlg, y ahí, en XE5 lo
encuentro como un alias de TPrintDlgW mientras que en delphi 7 es TPrintDlgA.
He estado mirando y las estructuras solo cambian en 1 cosa, 2 campos (lpPrintTemplateName
y lpSetupTemplateName) que para la versión W es de tipo LPCWSTR (Renombrado de PWideChar)
y en la versión A el tipo es PAnsiChar.

Y ahora me encuentro en este punto, no sé si esta información adicional será util, si voy por el
buen camino en la busqueda de una solución o me estoy confundiendo de por donde avanzar.

Una vez más muchas gracias.
Responder Con Cita
  #5  
Antiguo 15-01-2018
darkerviti darkerviti is offline
Miembro
 
Registrado: May 2013
Posts: 14
Poder: 0
darkerviti Va por buen camino
Buenas, lo he solucionado por otro lado,

Lo pongo aquí por si a alguien le puede servir.

El problema estaba en el uso de la clase TQRPrintDialog en el procedimiento TCustomQuickRep.PrinterSetup del archivo QuickReport.pas.
Lo que he hecho ha sido cambiar el tipo del objeto que se utiliza por uno de tipo TPrintDialog, con eso y un par de cambios por pequeñas variaciones de la estructura del objeto se soluciona el problema.

Espero que le sirva a alguien.

Un saludo.
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Resolver excepcion Impresora NEG1414 C++ Builder 4 15-02-2013 19:10:51
configurar codigo de impresora en windows xp martita Windows 1 15-05-2008 22:58:27
Como configurar una impresora TM U220D ivaylo Impresión 1 16-01-2008 15:27:16
Configurar impresora mosorio Impresión 7 16-04-2004 00:57:46
Problemas al configurar impresora ing_alsaac Impresión 0 08-07-2003 22:44:17


La franja horaria es GMT +2. Ahora son las 10:26:58.


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