我已经创建了一个新的打印服务器,并希望将我们的用户从旧服务器迁移到新服务器。我们有一个混合环境,包括 XP 和 Win7(64 位)。旧服务器是 Windows Server 2003 SP2(不是 R2 和 32 位),新服务器是 Windows Server 2008 SP1(64 位)。我为新打印服务器创建了一个别名,这样以后就不会出现这个问题了。
但是,我现在必须将用户从旧用户移到新用户。XP 和 W2K3 SP2 都无法很好地处理别名。最终,少数 XP 用户将升级到 Win7,而 2003 终端服务器用户将使用 W2K8,因此使用服务器的正确名称不是问题,因为它的寿命很短。(win7 用户可以使用别名)我尝试使用 VBScript 和 PowerShell 编写脚本,但无济于事。
还有比跳到每台机器上更简单的方法吗?
答案1
您可以使用组策略来帮助将打印机部署到您的计算机。Technet 有一份关于如何执行此操作的很好的指南:
http://technet.microsoft.com/en-us/library/cc755424(WS.10).aspx#BKMK_DeployingPrinters
对于 XP 客户端,您还需要通过启动/登录脚本运行 pushprinterconnections.exe。此文件是管理控制台在 Windows Server 2003 R2 管理工具包中,位于:
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=7331
如果您的域功能级别为 2008 或更高,则可以使用组策略首选项清除所有旧打印机连接并根据地理位置分配默认打印机。我们在网络上执行此操作,以便所有打印机连接和默认选择都是自动的。请参阅:
http://blogs.technet.com/b/grouppolicy/archive/2009/06/24/gp-preferences-set-a-default-printer.aspx
答案2
非常老旧,但 pushprinterconnections.exe 读取的是 GPO 对象下部署的策略,而不是服务器。它们通过打印管理 (printmanagement.msc) 控制台进行管理。您可以使用以下 powershell 查询找到它们:
Get-ADObject -Filter 'objectclass -eq "msPrint-ConnectionPolicy"'