ここでいくつかの回答で示唆されているように、アドビ経由でファイルを開かずに印刷するためにファイルを送信しようとしています。代わりに、PrintQueue
ライブラリ (からSystem.Drawing.Printing
) を使用しています。
これまでに達成したこと:
PrintQueue
pqとして参照されている正しいものがあります:
PrintQueue pq; //Assume it's correct. The way to get here it isn't easy and it is not needed for the question.
// Call AddJob
PrintSystemJobInfo myPrintJob = pq.AddJob();
// Write a Byte buffer to the JobStream and close the stream
Stream myStream = myPrintJob.JobStream;
Byte[] myByteBuffer = ObjectIHave.ToArray(); //Ignore the ObjectIhave, it actually is Linq object which is correct as well.
myStream.Write(myByteBuffer, 0, myByteBuffer.Length);
myStream.Close();
Microsoft Libraryから理解したように、正しく行われていますが、機能していません。何か案は?
編集:コードをデバッグすると、何かがプリンターに送信されていることがわかりますが、ファイルは送信されていないようです。