显示默认打印机的属性和首选项

时间:2019-12-02 09:12:07

标签: batch-file default printers

我正在尝试创建批处理文件,该文件将打开默认打印机的打印机属性,但是出现错误。 我尝试使用

rundll32 printui.dll,PrintUIEntry /e /n "printername"

,但是只有当您用手书写打印机名称时,它才会打开属性。

我想知道是否存在类似的cmd命令,该命令显示默认打印机的打印机属性和打印机首选项,而无需写打印机名称。

我尝试使用rundll32 printui.dll,PrintUIEntry /e /n "%printer_name%",但它给出了错误。

1 个答案:

答案 0 :(得分:2)

您可以列出打印机并找到默认打印机,然后启动命令。

for /f "tokens=1*" %%a in ('wmic printer get name^, default ^| find /i "TRUE"') do echo "%%~b"

上面只是列出了默认值,下面的代码将执行您在示例中手动键入的内容:

for /f "tokens=1*" %%a in ('wmic printer get name^, default ^| find /i "TRUE"') do rundll32 printui.dll,PrintUIEntry /e /n %%~b

您可能会在代码中遇到不需要的空格,然后只需分配一个变量,然后用一个空格替换多个空格即可。

for /f "tokens=1*" %%a in ('wmic printer get name^, default ^| find /i "TRUE"') do set printer=%%b
rundll32 printui.dll,PrintUIEntry /e /n "%printer:   =%"

编辑。

for /f "tokens=1*" %%a in ('wmic printer get name^, default ^| find /i "TRUE"') do set printer=%%b
Set "printer=%printer:   =%"
rundll32 printui.dll,PrintUIEntry /e /n "%printer:  =%"