用于检查打印机是否存在于本地的脚本,如果存在,则删除它

dre*_*mme 5 printing batch-file

我正在编写Windows批处理文件,需要检查本地计算机上是否存在打印,如果是,则从计算机中删除映射的打印机.这是我用来删除打印机的代码.

RUNDLL32 printui.dll,PrintUIEntry /n \\server\printerName /dn
Run Code Online (Sandbox Code Playgroud)

这工作正常,但现在我需要一个条件语句,所以我检查该打印机是否存在.然后运行该行.我不知道怎么写这个.

Bal*_*i C 2

您可以尝试这样的操作,只需将要查找的字符串替换为您要查找的打印机即可。

For /F "Tokens=4 delims=\" %%I In ('reg query HKCU\Printers\Connections ^|find /I "560C"') Do If "%%I"==",,ServerName,HP DeskJet 560C" goto :REMOVE
goto :SKIP
:REMOVE
RUNDLL32 printui.dll,PrintUIEntry /n \\server\printerName /dn
:SKIP
Run Code Online (Sandbox Code Playgroud)

或者只是运行命令,如果它不存在就会出错,如果存在它就会工作?

希望这可以帮助!