我正在努力彻底改变我们在一个环境中管理打印机的方式。我们有一个打印服务器,人们可以点击\\servername
并选择所需的打印机。这很完美 - 没有 UAC 提示、信任提示等。
我想使用“添加打印机/设备”(DevicePairingWizard.exe)向导,这样我们就可以在同一窗口中显示多个打印服务器。它会打开,但当非管理员尝试添加打印机时,它会生成 UAC 提示。这种情况只发生在我尚未安装驱动程序的打印机上。
这是具体“更改打印设置”和参考printui.exe \\servername\printer
。如果我取消,它会为缺少的驱动程序生成 0x00000bcb。
客户端是Windows 10。打印服务器2008r2,域控制器2012r2,域级别2012r2,功能级别相同。
我认为点击限制是可以的(基于对共享工作的直接访问)但是设置就是这样,并在计算机对象下定义。
我在这里做错了什么?
编辑:
我已尝试@Ruscal 和@yagmoth555 建议的“禁用”指向和打印限制,但没有影响。
当我直接运行可执行文件而不使用任何参数时,它仍然会返回 UAC 提示。看起来这是可执行文件本身中嵌入的东西。
查看这个可执行文件应该做什么,它应该只是将命令传递给相关的 rundll 命令。
此操作因 UAC 提示而失败。
C:\windows\system32\printui.exe /gm /in /n "\\printserver.mydom.com\canon1"
这是以管理员权限运行时执行的命令(由 sysinternals procmon 捕获)。即使没有提升权限,此命令也会正确运行并安装打印机。
rundll32 printui.dll,PrintUIEntry /gm /in /n "\\printserver.mydom.com\canon1"
答案1
这是关键:
它只发生在我尚未安装驱动程序的打印机上。
如果您的打印服务器已经安装驱动程序对于其管理的所有打印机,您的用户实际上无需“安装”任何东西,只需通过服务器实例化虚拟打印机即可。因此,不会出现 UAC 提示。
这意味着,作为打印机服务器管理员,您必须为您设置的任何新打印机/打印池“安装”驱动程序。这就是他们付给我们大笔钱的原因。