Как распечатать docx на определенном принтере с помощью Microsoft.Office.Interop.Word.Document.PrintOut()

Это кажется такой простой необходимостью, но по какой-то причине я не могу найти, как это сделать . У меня есть такой код:

Microsoft.Office.Interop.Word.Application word = new Microsoft.Office.Interop.Word.Application();
MemoryStream documentStream = getDocStream();
FileInfo wordFile = new FileInfo("c:\\test.docx");
object fileObject = wordFile.FullName;
object oMissing = System.Reflection.Missing.Value;
Microsoft.Office.Interop.Word.Document doc = wordInstance.Documents.Open(ref fileObject, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing);
doc.Activate();
doc.PrintOut(oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing, oMissing);

Мне нужно иметь диск настройки конфигурации, какой принтер и лоток используются. После поиска я нашел Microsoft.Office.Interop.Word.Application.ActivePrinter, который представляет собой устанавливаемое строковое свойство, которое, как говорится в документации, принимает «имя активного принтера», но я не знаю, что это означает для принтера для «Активный принтер», особенно когда у меня их два. Как это можно сделать?

9
задан andrew 20 June 2012 в 18:41
поделиться