System.Drawing.Printing名前空間を使用してドキュメントを印刷するコードがあります。これをWindowsサービスに移動する必要があります。ドキュメントには、これは不可能であると記載されています。これは、これまでの私の調査結果をサポートします(機能しないという点で)。System.Printing代わりに名前空間を使用することでこれを機能させることができるという前提で作業しています。
これが私がこれまでに持っているコードです:
private Metafile myDoc;
myDoc = GetEmfDoc();
PrintServer ps = new PrintServer("\\server1\printer1");
EnumeratedPrintQueueTypes[] flags = { EnumeratedPrintQueueTypes.Local };
PrintQueueCollection queues = ps.GetPrintQueues(flags);
PrintQueue pq = queues.First<PrintQueue>();
pq.AddJob("JobName", ?);
に渡したいmyDocのですpq.AddJob()が、出来ないようです。これを使用System.Drawing.Printingすると、イベントでページごとにこれを簡単にレンダリングすることができましたPrintDocument.PrintPage。
私がやろうとしていることは可能ですか?もしそうなら、誰かが私を正しい方向に向けることができますか?