最近在测试win2003 r2的打印机自动部署功能。
按照提示一步一步来,很顺利的就在测试机上自动部署好了需要安装的打印机。
具体的方法就是在win2003
r2上安装打印管理组件,之后在组策略中找到部署打印机的选项,将需要的打印机推送出去。需要注意的一点是,需要在组策略的开机脚本中加入一个打印机连接组件,路径为c:\windows\pmcsnap\pushprinterconnections.exe。
将这个文件复制到启动脚本中去。再等待客户计算机重启之后,需要安装的打印机就会被自动的安装好。
测试完成后,在准备在实际环境中使用前,又发现了一个问题:如果将之前部署了打印机的计算机从一个OU移到了另一个OU中去,而这另一OU并没有部署打印机,这个时候会发现,前面所部署的打印机还是会被安装上。这个时候不管如何刷新组策略,检查启动项,哪怕从域中脱离出来再用本地管理员登录,原先部署的打印机还是会被安装上去。只不过因为本地帐户没有通过域用户验证,打印机不能使用而已。
太夸张了……
问google大神无果之后,只能自己来尝试解决了。毕竟如果在生产环境中使用的话,打印机这样被装好但又删不掉的情况简直就是disaster。
最后,这个打印机被“不管不顾”的自动安装的问题可以用下面的方法解决:
在注册表中检查下面这些项,并将所有和之前安装的打印机有关的都删除掉,重新启动之后,自动部署的打印机就不会被自动安装了。
貌似打印机部署并不是和组策略一样的会在后台刷新的。而是部署之后固定好的,所以准备放弃这个方法。。。。如果用户移动一下ou,后面所要处理的事情太麻烦了。。。。有违初衷啊
PS:自己测试的时候发现,只有机器策略部署可以成功,但是在用户策略中部署打印机是没有反应的。。。。。。
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Print\Connections
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Control\Print\Connections
HKEY_USERS\S-1-5-21\Software\Microsoft\Windows NT\CurrentVersion\PrinterPorts
HKEY_USERS\S-1-5-21\Software\Microsoft\Windows NT\CurrentVersion\Devices
HKEY_USERS\S-1-5-21\Printers\Connections
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PPC 这条比较重要
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Print\Providers\LanMan Print Services\Servers
附上打印机自动安装的脚本,保存为.vbs即可,也许以后用的上。strComputer="."
Set objWMIService=GetObject("winmgmts:\\ " & strComputer & "\root\cimv2") Set colPrinters=objWMIService.ExecQuery _ (“Select * From Win32_Printer Where Local=TRUE”)
If colPrinters.Count=0 Then Set objNetwork = CreateObject("WScript.Network")
objNetwork.AddWindowsPrinterConnection "\\hzsv002\hp5200"
objNetwork.AddWindowsPrinterConnection "\\hzsv006\hp1020"
objNetwork.SetDefaultPrinter "\\hzsv002\hp5200"
End If
转载自:http://xhidex.blog.163.com/blog/static/5083214320109211125446/
其中打印机自动部署方法可参考:
阅读(2196) | 评论(0) | 转发(0) |