我遇到过远程桌面轻松打印用户尝试打印到他们的GDI / 基于主机的打印机来自远程桌面会话。打印机对象被重定向到 RD 会话,并在从 Office 应用程序内部寻址时报告“就绪”状态。但是,提交的打印作业只是被系统吞没 - 不会将任何内容打印到本地打印机,也不会将任何内容记录到服务器或客户端系统的应用程序或系统日志中。
我只有 HP 打印机对此进行了测试,并且在以下型号上遇到了上述症状:
- LaserJet P1106
- LaserJet P1505(USB 连接)
- LaserJet P1606 配备原装 HP 驱动程序(似乎也是 GDI)
- LaserJet 1022 (USB)
对于同样支持 PCL5e 的 P1606,我可以验证使用兼容的 PCL5e 驱动程序(我选择了 LaserJet 4000 PCL 5e)而不是原始的 HP GDI 驱动程序可以解决问题。
据我了解,Easy Print 流经射线光电子能谱作业随后被送入 RD 客户端的 XPS 处理器并通过本地驱动程序打印。按照这种逻辑,该过程应该完全与驱动程序无关,至少不会因 GDI 驱动程序而阻塞。为什么最后会这样?怀疑是客户端问题,我针对安装了一些相关更新的 Windows XP SP3 以及 Windows 7 SP1 进行了测试,但问题涉及所有客户端环境。
环境:
- Server 2008 R2 远程桌面会话主机
- Windows 7 SP1 客户端
- Windows XP SP3 客户端KB946411安装该程序应该也能修复一些 Easy Print 问题
答案1
我们与 MS 合作,他们创建了一个客户端修补程序,允许(至少是 HP)使用基于主机的驱动程序的打印机与 RDS Easy Print 配合使用。这已在我们的环境中成功测试。
此修补程序可从此处获取:http://support.microsoft.com/kb/3005781
答案2
我找到了 2 个在 Windows 7 客户端(32/64 位)上运行良好的解决方案
在 Windows 客户端上使用通用打印驱动程序 PCL5
- 首先删除强制 RDS 服务器使用 Easy print 驱动程序的 GPO
- 首先为所有使用 Easy Print Driver 的域用户创建 GPO
作为 GPO:
管理模板/Windows 组件/远程桌面服务/远程桌面会话主机/打印机重定向/首先使用远程桌面轻松打印驱动程序:已启用
首先为不使用 Easy Print Driver 的安全组(拥有 Laserjet 1022 的用户)创建 GPO
管理模板/Windows 组件/远程桌面服务/远程桌面会话主机/打印机重定向/首先使用远程桌面轻松打印驱动程序:已禁用
在 RDS 服务器 (2008 R2 64 位) 上安装 Laserjet 1022 驱动程序后,打印机工作正常
答案3
首先尝试在服务器 GPO 上启用 Easy Print。策略位置为“计算机配置 -> 管理模板 -Windows 组件 -> 远程桌面服务 > 远程桌面会话主机 -> 打印机重定向”。对于 Easy Print 重定向,必须将“首先使用远程桌面 Easy Print 打印机驱动程序”设置设置为“已启用”,对于 Legacy Print,必须将其设置为“已禁用”。对于“未配置”,默认选择 Easy Print。
如果上述方法不起作用,您必须在服务器和客户端计算机上安装相同版本的打印驱动程序。安装驱动程序后,您还需要再次将组策略更改为禁用,方法是“计算机配置 -> 管理模板 -Windows 组件 -> 远程桌面服务 > 远程桌面会话主机 -> 打印机重定向 -> 首先使用远程桌面简易打印驱动程序”,这样它就会将客户端上的驱动程序映射到服务器上的驱动程序。完成后,打印效果很好。