Windows Server 2019打印机无法共享,提示Print Spooler远程连接被策略阻止
问题描述
昨天域内所有客户端突然无法连接Windows Server 2019上的打印机共享。这台打印机原本通过打印共享供域用户使用,且已在Active Directory中发布。我尝试了更新驱动、删除并重新安装打印机及V3驱动等操作,但在尝试共享打印机时(无论是初始化向导还是后续操作),始终弹出以下错误:
Printer settings could not be saved
Remote Connections to the Print Spooler are blocked by a policy set on your machine
(错误截图显示上述两行提示内容)
另外我已经确认:工作站打印机GPO不影响该服务器(通过gpresult验证),服务器本地也没有应用打印策略,甚至手动启用本地策略中的"允许打印后台处理程序接受客户端连接"也没有效果。
排查与解决步骤
结合这个报错和你的操作记录,我给你几个针对性的解决方向:
重点检查域级组策略:
虽然工作站GPO不生效,但很可能存在针对服务器的域级GPO限制了打印后台处理程序的远程连接。你可以登录域控制器,打开组策略管理控制台(GPMC),找到应用到这台打印服务器的所有GPO,检查以下路径的设置:计算机配置 > 管理模板 > 打印机 > 允许打印后台处理程序接受客户端连接
确保该设置是已启用状态。如果当前是未配置或禁用,修改为启用后,回到打印服务器上运行gpupdate /force强制刷新组策略,之后再尝试共享打印机。直接验证并修改注册表:
组策略的配置最终会写入注册表,你可以直接检查注册表项确认:- 以管理员身份打开注册表编辑器(
regedit); - 导航到
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Printers; - 查看是否存在
AllowPrintSpoolerRemoteConnections这个DWORD键值:- 如果存在,确保它的数值是
1; - 如果不存在,右键新建一个DWORD(32位)值,命名为
AllowPrintSpoolerRemoteConnections,设置数值为1;
- 如果存在,确保它的数值是
- 修改完成后,重启Print Spooler服务(在
services.msc中找到该服务,右键选择重启),再尝试共享。
- 以管理员身份打开注册表编辑器(
检查打印后台处理程序服务的配置:
有时候服务的运行账户或依存关系异常也会导致这类问题:- 打开服务管理器(
services.msc),找到Print Spooler服务; - 右键点击服务选择「属性」,切换到「登录」选项卡,确认服务是使用「本地系统账户」运行,并且勾选了「允许服务与桌面交互」;
- 切换到「依存关系」选项卡,确认所有依存的服务(比如Remote Procedure Call (RPC)、HTTP Service等)都处于正常运行状态,如果有停止的,手动启动它们。
- 打开服务管理器(
排查Windows防火墙规则:
虽然报错提示是策略阻止,但也有可能是防火墙拦截了打印共享的连接。你可以临时关闭Windows防火墙测试一下,如果能正常共享了,就需要配置对应的入站规则:- 启用「打印机和文件共享」的默认入站规则;
- 确保TCP端口139、445,以及UDP端口137、138处于开放状态(这些是打印共享常用的端口)。
重新注册打印相关组件:
部分打印组件注册异常也可能导致共享失败,你可以以管理员身份打开命令提示符,依次执行以下命令:net stop spooler regsvr32.exe spoolss.dll regsvr32.exe printui.dll regsvr32.exe mshtml.dll regsvr32.exe shdocvw.dll regsvr32.exe shell32.dll net start spooler执行完成后再尝试共享打印机。
备注:内容来源于stack exchange,提问作者acseven




