今天发生一个蛮特别的情况,在 Windows Server 2012 R2 中调整一台印表机的「安全性」,将 “大家” 的「列印」权限由「允许」改成「拒绝」后,它就从「印表机」页面消失了,从「装置管理员」去查看,也同样消失,但是在 Excel 的列印画面则是还看得见,从 “\\本地主机” 也还看得见它 (原本就有开启分享列印)。试过重启 Print Spool 服务以及重新开机,结果都还是一样,因此只好试着改用指令模式,把权限改回来。
◎ 先确认好电脑及印表机名称,这边以”我的电脑”、”ZM400 (203 分辨率) – ZPL” 为例,输入下面指令以进入「印表机内容」:
rundll32 printui.dll,PrintUIEntry /p /n "\\MyPC\ZM400 (203 dpi) - ZPL"
◎ 第一次执行完,由于没有权限,所以会跳出 “您没有此印表机的存取权。部份索引标签将不会显示。”
◎ 接着会出现一个只有安全性标签的页面,点选「进阶」,准备强制拿回拥有权。
◎ 输入你的帐号或所属群组,以这台印表机的「拥有者」改成你或你的群组。
◎ 确认无误后,按「确定」
◎ 再次执行以下指令以进入「印表机内容」
rundll32 printui.dll,PrintUIEntry /p /n "\\MyPC\ZM400 (203 dpi) - ZPL"
◎ 目前我们只是拥有者,但还没有权限,所以一样会跳出 “您没有此印表机的存取权。部份索引标签将不会显示。”
◎ 到这边就出现完整的「安全性」设定视窗,以我的例子,把 “大家” 权限改回「允许」即可。
◎ 修改完之后,再次执行下列指令以进入「印表机内容」,这时已可看见完成的内容。
rundll32 printui.dll,PrintUIEntry /p /n "\\MyPC\ZM400 (203 dpi) - ZPL"
到这边其实已经完整拿回权限,不过我在「印表机」页面仍然没看见这台印表机,重启 Print Spool 服务也一样 (没试过重开机),不过在「装置管理员」倒是已经可以看见它了,由于我已经先装好另外一台让 User 使用,因此我的后续动作是从「装置管理员」将这台印表机给移除才完工。
【參考連結】
- 使用logon scripts新增移除印表机 | Brian哥哥
- 移除印表机的指令