win10 更新有时候会导致打印无法使用的一个解决

  • h
    hyes
    以下存为bat即可。其实就是重启下打印服务。写好了分享出来,记得右键以管理员身份运行才可以
    20200918_update:更新一个注释错误

    @echo off |chcp 65001
    @echo:
    @echo 临时设置活动代码页编号为936简体中文(GBK)
    @echo:
    @echo start script
    @echo off
    sc query |find /i "Spooler" >nul2 >nul
    @echo 通过sc query 查询服务是否存在
    if %errorlevel%==0 (goto exist) else goto notexist
    ::通过errorlevel 的返回值判断上次命令是否成功 errorlevel为0则为查询到结果,否则没有。
    ::如果errorlevel 的值为0 ,即查询到结果,也就是服务正在运行,则执行exist里面的命令。
    ::否则执行notexist里面的命令


    :exist
    echo ######### Spooler is running, restart Spooler ###########
    sc stop Spooler >nul2 >nul
    @echo 停止Spooler服务
    if 0 == %ERRORLEVEL% (echo 停止服务成功 >>日志.log) else echo 停止服务失败 >>日志.log
    ::通过errorlevel判断命令是否执行成功
    sc start Spooler >nul2 >nul
    @echo 启动Spooler服务
    if 0 == %ERRORLEVEL% (echo 启动服务成功 >>日志.log) else echo 启动服务失败
    if 0 == %ERRORLEVEL% (echo 启动服务成功 >>日志.log) else echo 启动服务失败 >>日志.log
    ::通过errorlevel判断命令是否执行成功
    echo %date% %time:~0,2%-%time:~3,2% 服务重新启动成功
    echo %date% %time:~0,2%-%time:~3,2% 服务重新启动成功 >> 日志.log
    pause
    goto :eof


    :notexist
    echo ######### Spooler is not running,will start Spooler ##########
    sc start Spooler >nul2 >nul
    if 0 == %ERRORLEVEL% (echo 启动任务成功 >>日志.log) else echo 启动服务失败
    if 0 == %ERRORLEVEL% (echo 启动任务成功 >>日志.log) else echo 启动服务失败 >>日志.log
    ::通过errorlevel判断命令是否执行成功
    echo %date% %time:~0,2%-%time:~3,2%% 服务启动成功
    echo %date% %time:~0,2%-%time:~3,2% 服务启动成功 >> 日志.log
    pause
    goto :eof
  • w
    wlf
    赶紧自制了一个BAT文件存起来了,谢谢分享
  • h
    hyes
    照猫画虎写出来的,亲测好用。。。有时候电脑插着usb热点时候,也会导致无法使用局域网的共享打印机。
  • w
    wlf
    我用WIN10好几年,电脑上装着三台打印机(其中一台是通过网络连接的),目前还没遇到因为更新而导致打印机无法使用的问题。不过我按你的指导,做了一份BAT文件放着有备无患
  • h
    hyes
    本地连接的打印机一般没啥事,我们这儿用的是刷卡计费打印。经常无法打印。
  • h
    hyes
    20200918_update:更新一个注释错误