【发布时间】:2011-01-06 19:17:17
【问题描述】:
我在delphi 7 中开发了一个简单的win 32 服务,它执行一些打印操作。在我们的 XP 机器上一切正常,但在目标 Windows 2008 标准服务器 上却失败了。当我在 print 语句周围放置一个 try except 块时,会导致 “Printer Selected is not valid” 错误。
当我检查打印机对象的打印机数量并将打印机对象中可用的所有打印机写入文件时,它工作正常。只有当我尝试执行打印(在本地和网络的任何打印机上)时,它才会失败。
基于使用谷歌的大量研究,我发现了很多使用本地帐户、网络帐户、特定帐户、LogonAsUser、ImpersonateUser、LoadUserProfile 等的建议,但没有任何效果。我还在已安装的打印机上设置了安全性,以便所有人都可以访问。
这件事真让我发疯。非常感谢任何帮助。
谢谢
【问题讨论】:
标签: delphi winapi windows-services windows-server-2008 printers