É possível enviar um arquivo para uma impressora com um arquivo em lote?

Como posso usar um ficheiro em lote para enviar um ficheiro de texto ou um .doc ou similar, a uma impressora ligada ao computador através de uma porta USB?

Author: Paul, 2015-09-15

2 answers

Também para obter o nome da impressora:

wmic printer get name /value | findstr Name

Irá listar todas as impressoras como:

Name=PDF
Name=Microsoft XPS Document Writer
Name=Fax

E se conhece parte do nome, pode incluí-lo numa variável dinamicamente com FOR.

@echo off

for /f "tokens=2 delims==" %%a in (
    'wmic printer get name /value ^| findstr PartOfThePrinterName'
) do (
    set "printer_name=%%a"
)

REM Also you can remove the FOR command if you want to set the variable as static.
REM ie. "set printer_name=MyPrinterName"

print filename.txt /D:"%printer_name%"

exit /b 0

Anote as aspas duplas e nenhum espaço em branco após {[[5]} para ter a certeza que consegue a impressora certa.

Outro método é definir a impressora predefinida e imprimir o documento através do bloco de notas.

RUNDLL32 PRINTUI.DLL,PrintUIEntry /y /n "%printer_name%"
start /min notepad /P filename.txt
 3
Author: Paul, 2015-09-16 01:51:49

Pode usar o comando PRINT como em baixo para imprimir ASCII files. Use print /? na linha de comandos para saber mais sobre o comando. Aqui, /D é o nome do dispositivo de switch fr, uma vez que por omissão é LPT1.

PRINT filename.txt /D:<printer_name>

Veja Também este ArtigoPara mais informações sobre a impressão de PDF, etc.

 0
Author: Rahul, 2015-09-15 22:36:43