как я могу указать принтер и количество страниц для печати, вот мой код, который печатает все страницы в файле PDF, также он всегда использует принтер по умолчанию.
private void printPDFFile(string fileName)
{
PrintDialog pd = new PrintDialog();
pd.PrinterSettings = new PrinterSettings();
if (DialogResult.OK == pd.ShowDialog(this))
{
Process proc = new Process();
pd.PrinterSettings.FromPage = 1;
pd.PrinterSettings.ToPage = 2;
pd.PrinterSettings.PrintRange = PrintRange.SomePages;
proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; //Hide the window.
proc.StartInfo.FileName = @"C:\Program Files\Foxit Software\Foxit Reader\Foxit Reader.exe";
proc.StartInfo.Arguments = "-p \""+ fileName+ "\" \"" +pd.PrinterSettings.PrinterName+"\"";
proc.StartInfo.CreateNoWindow = true;//!! Don't create a Window.
proc.Start();
proc.CloseMainWindow();
}
}