Seleccion de Impresora por Defecto
Estimados..
Resulta que tengo un sistema que imprime en 2 impresoras. En una de las opciones imprimo siempre por la impresora por defecto y en otras opciones solicito al usuario que seleccione la impresora. Resulta que si el usuario selecciona x ej. la impresora 2 para hacer un informe, Windows "recuerda" la ultima impresora seleccionada y cuando necesita imprimir por la opcion uno que es la "defecto" no toma esta, sino que toma la ultima que Windows "imprimio" o guardo. Como puedo hacer para que siempre tome la impresora por defecto sin tener que seleccionarla independiente que en otras opciones del sistema se pueda imprimir por otras impresoras. Gracias. |
|
Cita:
Si lo que quieres es cambiar cuál es la impresora por defecto en el sistema, entonces usa la opción de ecfisa. // Saludos |
También lo que puedes hacer es antes de imprimir guardar la impresora por defecto.
Un saludo. |
Gracias a todos por responder.
Mi deseo no es "setear" la impresora por defecto, sino imprimir siempre en dicha impresora independientemente que se haya impreso en otra, porque en una misma aplicacion, si imprimo por otra impresora seleccionandola previamente, al parecer windows "recuerda" cual fue la ultima utilizada e imprime por esta, al menos asi me esta saliendo ahora. He probado con la opcion de PrinterIndex = -1, pero no ha causado ningun efecto. Si hago la sugerencia de olbeup, printer.printerindex, que devuelve ?? la por defecto o la ultima utilizada?? Les cuento un poco mas. Tengo en una pc 2 impresoras, una matricial y una laser. Los informes grandes se sacan por la laser la cual selecciona el usuario, pero hay un ticket que tiene que salir SIEMPRE por la matricial sin preguntar al usuario, y esta es la impresora por defecto del sistema. Por eso , si imprimo algun informe por la laser, luego cuando imprimo el ticket, de alguna manera recuerda que ésta fue la ultima y me imprime el ticket por esta impresora, en lugar de la matricial. Gracias por las sugerencias. |
Yo guardo en un fichero INI las impresoras que se van a utilizar en la aplicación, configurable por el usuario, a continuación los fragmentos de código que utilizo.
Un Saludo. |
¿Y sería una tontería capturar la impresora activa antes de imprimir en la matricial, seleccionar la impresora matricial, imprimir en ella y luego volver a dejar la impresora que había?
|
Hola lbidi,
Efectivamente tienes razón, Prueba con esto otro, está funciona correctamente Un saludo |
Gracias a todos por vuestras respuestas.
Aunque veo que la mayoria del codigo posteado es para QuickReport. Estoy usando Fast Report, pero tratare de adaptarlo. Saludos. |
Cita:
Un saludo. |
olbeup...Efectivamente tienes razon.. No mencione el uso de FR en ningun lado.
Casi siempre lo hago, pero esta vez en el apuro, omiti hacerlo. Pido disculpas por la falta de informacion brindada al hacer la consulta. Espero hacerlo mejor la proxima. Gracias a todos. Saludos. Leonardo |
Ya sabemos: Mejores preguntas obtienen mejores respuestas ;)
|
Hola Ibdi.
Como la mayoría también uso Quick Report, pero buscando leí que en la propiedad PrintOptions.Printer de Fast Report, se encuentra la última impresora seleccionada. A partir de ese dato, encontré este ENLACE, revisá si te resulta útil. Saludos. |
Gracias efcisa.. Con ese enlace y tu sugerencia, logre hacerlo.
Saludos. |
La franja horaria es GMT +2. Ahora son las 04:43:20. |
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