2011-08-20 144 views
1

我開發了一個C#的Windows服務。現在我正在尋找一種方式,它可以將特定文件(可以是TIFF,PDF,HTML,MHT或文本)打印到特定打印機。問題在於,當我使用Process打印動詞時,如何設置特定的打印機?在Windows服務中使用Process也是可行的嗎? - 它不應該顯示一個窗口。如何將文件打印到特定的打印機

回答

2

在我看來,這種提議的方法可能會失敗。使用shell動詞進行打印將調用關聯的應用程序來執行打印。對於這些文件類型中的很多,這將導致顯示UI,這將在服務中失敗。

您提到的所有文件類型都可以直接從您的服務打印出來,而無需藉助其他應用程序。這將需要更多的編碼,但我相信它是一種服務最可行的解決方案。

或者,您可以從交互式桌面上運行的標準應用程序執行此操作。這應該可以正常工作,並且我認爲您將控制運行此代碼的計算機的硬件和軟件配置。否則,使用外殼動詞將是一個非常脆弱和脆弱的方法 - 誰知道什麼文件關聯在隨機客戶的機器上?!

0

請注意,PDF格式的情況下,打印PDF時無人值守會違反Adobe EULA。假設.pdf擴展名與Adobe PDF Reader(或這種情況下的打印機)相關聯......)。

相關問題