QuickReport抛出"当前没有默认打印机选择"的例外情况

M S*_*kel 4 printing delphi windows-services

我创建了一个打印TQuickReports的Delphi服务.如果编译并作为Windows应用程序运行,一切正常.但是当转换为作为服务运行时,尝试创建包含TQuickRep组件的表单会引发异常.

这项服务在许多其他盒子上运行良好,但特别是没有这个.以下是一些细节:

  • 使用QuickReport版本4.07
  • Box是Windows Server 2008操作系统.
  • 使用Delphi 2007
  • Printer.Printers.Count返回一个正值.事实上,我可以列出所有的打印机.
  • 我尝试使用本地系统帐户运行该服务并以管理员身份登录.

Mih*_*șan 6

是否有会话0设置默认打印机?请记住,在Vista/Server 2008/Windows 7下,服务在单独的会话中运行.登录用户是否具有默认打印机设置是不相关的 - 它是每会话设置,不会影响会话0.

您是否可以重写代码以优雅地处理该异常并选择要使用的打印机?