Imprimir a partir da linha de comando do Windows 7

8

Estou procurando automatizar algumas impressões no Windows 7. Idealmente, a partir da linha de comando. Como se eu tivesse clicado com o botão direito e selecionado "Imprimir".

Tentei o comando:

C:\>print /D:"CutePDF Writer" test.txt

Essa impressora deve criar arquivos PDF (como a impressora XPS), mas não conseguiu exibir nada na fila da impressora. Idéias?

    
por mizipzor 21.09.2012 / 15:22

5 respostas

14

O comando print usa a seguinte synatx para a opção /d: :

Specifies the printer on which you want to print the job. You can specify a local printer by specifying the port on your computer to which the printer is connected. Valid values for parallel ports are LPT1, LPT2, and LPT3. Valid values for serial ports are COM1, COM2, COM3, and COM4. You can also specify a network printer by its queue name (\ServerName\ShareName). If you do not specify a printer, the print job is sent to LPT1.

Isso significa que você não pode usar "CutePDF Writer" como argumento.

Existem duas maneiras de funcionar:

  • Atribuir uma porta COM à sua impressora.

    1. Abra Iniciar → Painel de controle → Dispositivos e impressoras .
    2. Clique com o botão direito do mouse no CutePDF Writer e selecione Propriedades da impressora .
    3. Na guia Portas , atribua uma porta não utilizada de COM1: a COM4: à sua impressora.
    4. Se você escolheu, por exemplo, COM3 , imprima usando o seguinte comando:

      print /d:COM3 test.txt
      
  • Compartilhe a impressora.

    1. Abra Iniciar → Painel de controle → Dispositivos e impressoras .
    2. Clique com o botão direito do mouse no CutePDF Writer e selecione Propriedades da impressora .
    3. Na guia Compartilhamento , decida compartilhar a impressora e atribuir um nome de compartilhamento a ela.
    4. Se você escolheu, por exemplo, CutePDF , imprima usando o seguinte comando:

      print /d:\%COMPUTERNAME%\CutePDF test.txt
      
por 21.09.2012 / 16:10
4

Hi O seguinte é mais fácil defina CutePDF como impressora padrão se você conhece o DOS, então configurar uma impressora como padrão não deve ser problema e, em seguida, redefinindo a configuração padrão da impressora novamente.

para imprimir um arquivo de texto ou arquivo htm ou um arquivo bat ou qualquer arquivo de texto, digite o seguinte

  notepad /p test.txt

para outros programas, encontre o formato da linha de comando para impressão (no regedit ou na documentação)

    
por 25.10.2014 / 06:02
3

Print Registered File Types Files that have a file type association in Windows (95/98/NT/2000) can be printed using the right mouse button

Esta associação pode ser vista, por ex. para o arquivo .rtf em

"HKEY_LOCAL_MACHINE\SOFTWARE\Classes\rtffile\shell\printto\command"

onde o comando se parece com algo assim:

"%ProgramFiles%\Windows NT\Accessories\WORDPAD.EXE" /pt "%1" "%2" "%3" "%4"

o que significa:

"wordpad.exe /pt TextFileName PrinterName [ DriverName [ PortName ] ]"

(colchetes significa opcional). Pode ser chamado de cmd usando o powershell, enviado no Windows desde o Vista.

powershell -command "start -verb printto AnyFile.rtf PrinterName [ DriverName [ PortName ] ]"

Estritamente:

"%windir%\System32\WindowsPowerShell\v1.0\powershell.exe" "-Command" "& {Start-Process -FilePath  'test.txt'  -ArgumentList '\"CutePDF Writer\"' -Verb 'printto' }"

Funciona para quase todos os tipos de arquivos registrados com esse verbo registrado (printto)! Mas os drivers de impressora geralmente mostram a caixa de diálogo do usuário. A caixa de diálogo do usuário exibida pode ser desativada na impressora Bullzip PDF.

    
por 26.08.2016 / 09:44
1

@mizipzor:

  1. O arquivo de trabalho entra com êxito no printqueue quando você segue a resposta de Dennis.

  2. Mas o processamento da tarefa fica preso porque a impressora não pode consumir um arquivo de entrada TEXT ! As razões:

    • As filas de impressão do Windows são muito mais burras nesse aspecto (em contraste com as filas CUPS Linux / Unix / OSX - que podem digitar automaticamente os dados recebidos e convertê-los automaticamente para o que os respectivos relatórios de impressão como dados digestíveis).
    • Sua impressora provavelmente espera dados PostScript como entrada para criar um PDF a partir dele.

Portanto, o que você tenta fazer com seu comando não funcionará : envia um arquivo de texto para uma "impressora" que cria PDF. E não é possível que funcione de qualquer outra forma "simples" ...

    
por 05.10.2015 / 14:23
0

Painel de controle, em seguida, Dispositivos e impressoras Clique com o botão direito do mouse na impressora e depois nas propriedades da impressora Certifique-se de que a impressora esteja compartilhada e o "Nome do compartilhamento" tenha 8 caracteres ou menos. No prompt do DOS > net use lpt1: \ 127.0.0.1 \ Agora seus programas DOS serão impressos!

    
por 03.11.2017 / 02:05