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