Ver Mensaje Individual
  #2  
Antiguo 28-03-2018
blackx5n blackx5n is offline
Miembro
 
Registrado: feb 2008
Posts: 51
Reputación: 17
blackx5n Va por buen camino
Smile

Hola

Si se puede usar la consola para imprimir no es necesario usar windows forms.

El codigo que posteaste esta incompleto.

Seria de esta forma:

Código:
using System;
using System.IO;
using System.Drawing;
using System.Drawing.Printing;

namespace prrooror
{
    class Program
    {
        // Variables Globales
        private Font printFont;
        private StreamReader streamToPrint;
        
        // Funcion Obtiene el objecto Graphics desde PrintPageEventArgs
        // Se genera para cada pagina que se imprima
        private void pd_PrintPage(object sender, PrintPageEventArgs ev)
        {            
            Graphics g = ev.Graphics;
        }
        
         // Funcion Imprimir
          void Printing(string printer)
          {
                try
                {
                    streamToPrint = new StreamReader(@"Hola amigo.");
                    try
                    {
                        printFont = new Font("Arial", 10);
                        PrintDocument pd = new PrintDocument();
                        pd.PrintPage += new PrintPageEventHandler(pd_PrintPage);
                        
                        // Especifica la impresora a usar
                        pd.PrinterSettings.PrinterName = printer;

                        if (pd.PrinterSettings.IsValid)
                        {
                            pd.Print();
                        }
                        else
                        {
                            Console.WriteLine("Impresion Invalida.");
                        }
                    }
                    finally
                    {
                        streamToPrint.Close();
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            } // Fin function
        
    
        
        public static void Main(string[] args)
        {
            Console.WriteLine("Modo Consola");
            
            Program o=new Program();
            
            o.Printing("HP LaserJet Pro P1102w");
            
            Console.Write("Press any key to continue . . . ");
            Console.ReadKey(true);
        } // Fin programa principal
    } // Fin clase
} // Fin namespace
En la funcion tienes que especificar el nombre de la impresora.

Saludos
Responder Con Cita