从WCF数据服务打印文件

时间:2012-08-16 15:05:55

标签: c# wcf printing wcf-data-services system.printing

我有一个WCF服务操作,它将图像作为字节流接收,并应在服务器上本地打印该图像静默。没有对话框或弹出窗口,当调用服务时,它应该立即将图像发送到打印机。

我正在使用PrintDocument.Print()尝试使用存储在服务器上的本地图像。

奇怪的是,它适用于Visual Studio的集成开发服务器,但不适用于IIS 7.5。我已经给了应用程序池管理员权限(我实际上使用的是登录用户的身份,这是一个管理员)但没有运气。

从Visual Studio的服务器和IIS中我都可以看到可用的打印机,但是当我从IIS调用该服务时,没有任何事情发生,我的意思是 nothing 。没有错误,没有例外,没有任何迹象表明发生了什么。

我尝试将ProcessStartInfoVerb = "print"Verb = "PrintTo"一起使用,但同样的事情发生了。适用于Visual Studio但不适用于IIS。

我还尝试创建PrintTicketLocalPrintServer PrintSystemDesiredAccess.AdministratePrinter权限,但我不知道该怎么做,我不知道怎么说打印图像文件。

我知道在任何语言/平台上打印都是一项棘手的任务,但是 是否很难从WCF数据服务打印图像?

1 个答案:

答案 0 :(得分:1)

行。我现在想把头撞到墙上。这显然是一个权限问题,所以 将打印机的所有者设置为管理用户组(设置为系统)就可以了。

我现在真的很想念Linux:P