Отправьте PDF-файл в Acrobat Reader, чтобы распечатать его, не открывая/не показывая окно.C#

Место общения программистов C#
Anonymous
Отправьте PDF-файл в Acrobat Reader, чтобы распечатать его, не открывая/не показывая окно.

Сообщение Anonymous »

Я пытаюсь отправить PDF-документ на печать из C# с помощью ProcessStartInfo, но не открывая окно Adobe Acrobat. Файл печатается правильно, но Adobe Acrobat отображает всплывающее окно, даже если я свернул его, нет заставки, нет окна создания и т. д. Ниже кода.

Код: Выделить всё

string PathAcrobat = GetAcrobatPath();

string args = string.Format("/s /h /t \"{0}\"", filename);

var startInfo = new System.Diagnostics.ProcessStartInfo
{
FileName = PathAcrobat,
Arguments = args,
CreateNoWindow = true,
ErrorDialog = false,
UseShellExecute = false,
WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden
};

var process = System.Diagnostics.Process.Start(startInfo);
Я погуглил и не нашел решения:

Ссылка1
Ссылка2

ПЫТКА №1:
Я нашел статью Microsoft, которая предлагается в качестве возможного решения в этой теме. По сути, он заключается в отправке необработанных данных на принтер, но я не уверен, сработает ли это. Я постараюсь вернуться сюда с отзывом.

Если бы это сработало, то преимуществом было бы отсутствие зависимости от Acrobat и, следовательно, необходимости его установки в системе. . Также нет необходимости использовать ProcessStartInfo.

Но в отличие от Acrobat, это «решение» будет зависеть от некоторых DLL ОС.

Подробнее здесь: https://stackoverflow.com/questions/471 ... any-window

Вернуться в «C#»