2013-07-03 19 views
18

Programuję aplikację webową z Visual Studio 2010 (C#). Chcę wysłać plik PDF (zapisany na moim komputerze) do drukarki po kliknięciu przycisku.wyślij plik PDF na drukarkę - drukuj pdf

Do utworzenia pliku PDF użyłem iTextSharp. Próbowałem tego, ale po prostu otwiera Adobe Reader:

   proc.StartInfo.FileName = @"C:\Archivos de programa\Adobe\Reader10.0\Reader\AcroRd32.exe"; 
       proc.StartInfo.Arguments = String.Format(@"/p /h {0}", pdfFileName); 
       proc.StartInfo.UseShellExecute = false; 
       proc.StartInfo.CreateNoWindow = true; 

       proc.Start(); 

Z góry dziękuję !!!

Odpowiedz

34

to zostało już zadane i odpowiedzi tutaj: How can I send a file document to the printer and have it print?

Kod, który został wykorzystany:

private void SendToPrinter() 
    { 
     ProcessStartInfo info = new ProcessStartInfo(); 
     info.Verb = "print"; 
     info.FileName = @"c:\output.pdf"; 
     info.CreateNoWindow = true; 
     info.WindowStyle = ProcessWindowStyle.Hidden; 

     Process p = new Process(); 
     p.StartInfo = info; 
     p.Start(); 

     p.WaitForInputIdle(); 
     System.Threading.Thread.Sleep(3000); 
     if (false == p.CloseMainWindow()) 
      p.Kill(); 
    } 

to w zasadzie otwiera „ukryty” PDF-czytnik, informuje go wydrukować, czeka na to zakończyć, a następnie zamknąć go

+1

dziękuję bardzo! to naprawdę działa dla mnie! przepraszam, nie mogłem ci odpowiedzieć przed ... – Alsan

+2

@Alsan: Nie ma problemu :) cieszę się, że pomogło –

+3

To jest dobre rozwiązanie, ale co jeśli chcę wydrukować dokument z ręcznym ustawieniem drukarki? –