使用 powershell 脚本清除 Windows 7 上的打印驱动程序缓存

Dol*_*kle 5 windows powershell drivers printing

[背景]

我们一直遇到网络客户端突然无法打印的问题。他们得到一个带有十六进制代码的奇怪错误。我们确定驱动程序中的某些内容搞砸了,我们可以通过清除驱动程序缓存并重新安装驱动程序来解决该问题。这种情况经常发生在随机计算机上。我们假设这是最新的 Dell 2330dn 驱动程序的一个错误,因为这是唯一存在此问题的型号。

[问题]

我们要做的是编写一个 Powershell 脚本来清除驱动程序缓存并重新下载驱动程序。我看到了大量的脚本来管理队列、服务器和端口,但没有用于本地驱动程序缓存管理的脚本。

[当前的解决方法]

由于我们必须手动执行此操作,因此我会写出步骤,以便您知道我们希望此脚本复制什么。

  1. 禁用打印后台处理程序
  2. 重启机器
  3. 删除以下内容:C:\windows\system32\spool\drivers\w32x86
  4. 启用打印后台处理程序并启动服务。
  5. 删除网络打印机对象并从服务器重新添加网络打印机。

[要求]

我对 powershell 足够好,可以将上述解决方法转换为一对脚本。我想找到一个比我目前的解决方法更优雅的解决方案。

有什么建议?

nor*_*ben 2

仅仅因为您使用 PowerShell 并不意味着您不能使用旧的命令sc stop/start servicename,例如net use、 等。

如果您确实需要重新启动系统,则可能需要两个单独的脚本。

删除打印机驱动程序目录的内容会出现什么问题?或者您所说的“文件管理”还有其他含义吗?

  • 实际上是 Explorer.exe 锁定了文件。您可以杀死进程(杀死Windows界面)删除文件,然后重新启动资源管理器以恢复Windows界面。如果最终用户的所有窗口突然消失,这对于最终用户来说并不是一个好的体验。 (2认同)