2015-01-29 8 views
0

У меня есть код ниже. По моим сведениям, он конвертирует и сохраняет в формате pdf. Может ли кто-нибудь объяснить этот код?Печать Сохранить как PDF

Process cnp = new Process(); 
cnp.StartInfo.FileName = "AcroRd64.exe"; 
cnp.StartInfo.Arguments = "/n /t c:/test.jpg Microsoft Office Document Image Writer"; 

Обновление:

Я создал консольное приложение, образца для запуска печати и он не работает

class Program 
{ 
    static void Main(string[] args) 
    { 
     try 
     { 
      Process p = new Process(); 

      p.StartInfo.FileName = @"C:\Program Files (x86)\Adobe\Reader 10.0\Reader\AcroRd32.exe"; 
      p.StartInfo.Verb = "Print"; 
      p.StartInfo.Arguments = "/n /t c:/test.png " + "Microsoft Office Document Image Writer"; 
      p.StartInfo.CreateNoWindow = false; 
      p.StartInfo.UseShellExecute = true; 
      p.StartInfo.WindowStyle = ProcessWindowStyle.Maximized; 

     } 
     catch (Exception ex) 
     { 
      Console.WriteLine(ex.ToString()); 
     } 
     Console.ReadKey(); 
    } 
} 

ответ

0

Process используется для запуска и остановки процессов в системе.

Понятно, что ваш код пытается запустить процесс «AcroRd64.exe», который, как я полагаю, является Adobe Reader Acrobat Reader. Argumens аргументы в процессе, так что в основном, это эквивалентно записи следующее в командной строке:

AcroRd64.exe /n /t c:/test.jpg Microsoft Office Document Image Writer 

Там немного больше информации об этом под этим other SO question.

Ваш код может не работать, потому что единственный аргумент Microsoft Office Document Image Writer содержит пробелы. Попытка:

cnp.StartInfo.Arguments = 
    "AcroRd64.exe /n /t c:/test.jpg \"Microsoft Office Document Image Writer\""; 
+0

Этот тест.jpg не открывается. Преобразует ли код в TIFF перед процессом? –

+0

Pls проверяет мои обновления, о которых идет речь, это не печать –