public void Imprimir()
{
string NombreImpresora = "";//Donde guardare el nombre de la impresora por defecto
//Busco la impresora por defecto
for (int i = 0; i < PrinterSettings.InstalledPrinters.Count; i++)
{
PrinterSettings a = new PrinterSettings();
a.PrinterName = PrinterSettings.InstalledPrinters[i].ToString();
if (a.IsDefaultPrinter)
{
NombreImpresora = PrinterSettings.InstalledPrinters[i].ToString();
}
}
rptReporte rpt = new rptReporte ();// Instancio el reporte
rpt.SetDataSource(Dt);//Asigno la fuente de datos a mi reporte.
rpt.PrintOptions.PrinterName =NombreImpresora; );//Asigno la impresora
rpt.PrintToPrinter(2, false, 0, 0); );//Imprimo 2 copias
}
Si necesitamos imprimir el reporte en una impresora especifica, simplemente asignamos el nombre de la impresora al reporte
rpt.PrintOptions.PrinterName =”ElNombreImpresora”;
Nombre de espacios utilizados
using System.Drawing.Printing;
Me gustaría saber que ta pesado es ese proceoss para una aplciación que se está actualziandop por cada 10 segundos.
ResponderEliminarNo te entendí, que necesitas?
ResponderEliminarEn realidad quiciera saber que tan pesado es este proceso de buscar una impresora. pues me interesa implementarlo en un sistema donde el acceso a disco debe ser muy rapido.
ResponderEliminarPues la verdad es un poco pesado, lo que yo hago es leer la impresora por defecto al inicio del programa y no la vuelvo a leer hasta que termine la aplicación; pero para correr este proceso cada 10 segundos creo que no te funcionaria como esperas.
ResponderEliminarok gracias por responder.. eso se agradece ya estareos enviando más dudas jeje saludos bye!!
ResponderEliminarBuen post, es Código util! Gracias por el amor al arte. Saludos
ResponderEliminarMuchisisisimas Gracias por Tu codigo, yo lo use solamente para cuando necesite un formato especifico, y cuando no uso la impresora por default sin necesidad de tu codito... me ayudo bastante con un problemita que tenia y asi no tener que cambiar de impresora predeterminada
ResponderEliminarque bueno que les allá gustado el código, si tienen código bueno que deseen publicar, me lo pueden enviar y lo publicamos, para seguir ayudando a toda la comunidad.
ResponderEliminarComo hago para espicificar el nombre del informe a imprimir?
ResponderEliminarPorque cuando envio el informe, en el buffer de la impresora me aparece "document" y quiero que diga "informe x"
saludos!
Exelente es preciso lo que estaba buscando
ResponderEliminarsi la impresion es desde aspx ?? cuando ajecuta esa linea de codigo ya no regresa el debug, me paso antes para visualizarlo y eran permisos del iis donde se crean el docuemnto temporal. crees que sea lo mismo ?
ResponderEliminarhola espero siga abierto el foro, bueno, muy buen codigo para imprimir directo a la impresora, ahora lo que necesito es ver si la impresora esta prendida, o le falta papel, o tiene algun problema, necesito capturar eso y mostrar al usuario
ResponderEliminargracias
alguien me puede ayudar? yo quiero imprimir desde una aplicación de consola en c# un reporte de crystal repòrt con mysql. es para imprimir un ticket... mi correo es mariovargasgaxiola@outlook.com
ResponderEliminarno hay nada importante aqui
ResponderEliminar