Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/07/2009, 09:33
wondercloud
 
Fecha de Ingreso: abril-2009
Mensajes: 43
Antigüedad: 15 años, 10 meses
Puntos: 1
detectar si hay impresora instalada

hola gente, tengo una aplicacion que genera una boleta cuando se realiza una venta.
El problema que tengo es que en este momento no tengo una impresora instalada y lo que necesitaria es poder ejecutar el resto del codigo sin la necesidad de tener una instalada.
lo que necesitaria es saber como preguntar si existe una impresora instalada.

el codigo:

Código:
   //Se crea el remito para la venta
            //se recorre la lista de items de la venta y se las guarda en el remito
            foreach(ItemVenta itemv in venta.Items){
                ItemRemito iR = new ItemRemito();
                iR.Cantidad = itemv.Cantidad;
                iR.Precio = itemv.Precio;
                iR.Producto = itemv.Producto;
                iR.Precio = itemv.Precio;
                iR.CodigoArt = itemv.CodigoArt;
                itemv.Total = itemv.Total;
                venta.Remito.Items.Add(iR);
            }
            venta.Remito.Cliente = venta.Cliente;
            venta.Remito.Fecha = venta.Fecha;
            venta.Factura.Cliente = venta.Cliente;
            venta.Factura.Fecha = venta.Fecha;
            venta.calcularTotal();
            venta.Factura.Total = venta.Total;

            //Se Persiste la venta en la bsse
            IRepositorioVenta rVenta = new RepositorioVenta();
            rVenta.Agregar(venta);

            //Se persiste el registro de cuenta corriente
            IRepositorioCuenta rCuenta = new RepositorioCuenta();
            Cuenta cuenta = new Cuenta();
            cuenta.Cliente = venta.Cliente;
            cuenta.Fecha = venta.Fecha;
            cuenta.Debe = venta.Factura.Total;
            cuenta.Factura = venta.Factura;
            cuenta.Saldo = rCuenta.ObtenerSaldoCli(venta.Cliente.Id);
            cuenta.Saldo = cuenta.Saldo - cuenta.Debe;
            rCuenta.Agregar(cuenta);

            //Se imprimen los datos
            PrintDialog1 = new PrintDialog();
            System.Drawing.Printing.PrintDocument docToPrint = new System.Drawing.Printing.PrintDocument();
            PrintDialog1.AllowSomePages = true;
            PrintDialog1.ShowHelp = true;
            docToPrint.PrintPage += new PrintPageEventHandler(this.PrintPage);
            PrintDialog1.Document = docToPrint;

            //Se configura y muestra el preview
            printPreviewDialog1.Document = PrintDialog1.Document;
            printPreviewDialog1.ShowDialog();//aca me tira error "No hay impresoras instaldas
            
            //Vaciar todo llamando al Form Load

            frmVenta_Load(this, e);