【问题标题】:WCF Service running under app pool impersonating domain user account prints to network printer for one domain account but not another在模拟域用户帐户的应用程序池下运行的 WCF 服务为一个域帐户而不是另一个域帐户打印到网络打印机
【发布时间】:2018-05-25 19:05:19
【问题描述】:

我使用的是 Windows Server 2016。在 Windows 10 机器上运行。

我们有一位系统管理员,他最近离开了我们公司。他设置了网络服务器,所以我有权使用它等等。如果我在运行 WCF 服务的应用程序池上模拟自己的域帐户,该服务可以成功打印到网络打印机。

我让一位同事创建了一个新的域帐户,其目的是用于应用程序池的模拟,以便 wcf 服务可以打印到网络打印机,以防我离开公司。我们将新域用户添加到打印机并授予它权限,当应用程序池在这个新域用户下运行时,我可以看到作业被发送到打印机但它不打印。如果我将应用程序池切换回在我的域帐户下运行,它会打印得很好。我发现唯一看起来不同的是,在服务器管理器 -> 打印管理 -> 打印服务器 -> 打印机 -> 所需打印机下,我的域帐户列在具有特殊权限的打印机的高级安全设置下,但是未列出新的域帐户。我没有添加新域帐户的权限。

这使用 System.Drawing.Printing.PrintDocument.Print() 并且在调用打印时没有发生异常,它挂起几秒钟,作业显示在打印队列中并很快消失而不打印。

我只是想知道最后一部分是否可能是 WCF 服务无法打印的原因?

【问题讨论】:

    标签: c# wcf iis printing servermanager


    【解决方案1】:

    所以在和 IT 部门的另一个人合作之后,我发现这不起作用的原因是因为服务器没有设置为打印服务器,所以在将它添加到 web 服务器后,它能够发送和打印。

    当它在我下面运行时,它会将打印作业重定向到我的本地计算机,这就是它能够打印的原因。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-01-11
      • 1970-01-01
      • 2011-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-31
      相关资源
      最近更新 更多