通过Windows服务将pdf文件发送到打印机

时间:2015-01-04 12:35:59

标签: c# pdf printing windows-services

我们需要通过Windows服务直接将pdf文件发送到打印机。

我们的场景是:我们的观察者窗口服务将观看特定文件夹,并且只要在该文件夹中创建(复制)新的PDF文件,它就应该直接发送到默认打印机。

我们尝试通过Windows服务打开adobe.exe进程来实现这一目标,但我们没有成功。我们还尝试通过Windows服务运行批处理文件,但它不能正常工作。似乎我们无法根据Windows安全规则通过Windows服务打开进程(计算机正在运行Windows Server 2008)。

有人可以帮助我们如何实现这种直接打印。 我们不一定需要在后台打印。即使我们可以打开adobe打印对话框(或任何其他打印选择对话框),也可以。

提前致谢

2 个答案:

答案 0 :(得分:0)

我的猜测是创建隐藏在系统托盘中的小应用程序,使用WCF将其连接到您的服务,然后使用以下代码进行打印:msdn

但这是我猜测的......

答案 1 :(得分:0)

如果您将Windows服务设置为作为本地服务帐户运行并选中该框以允许它与桌面交互,那么您应该能够启动一个调用Adobe或Foxit阅读器的shell进程并传递相应的命令行参数。在我们需要转移到服务的域帐户之前,我们工作得很好