我希望在Windows 7中自动执行一些打印。理想情况下,从命令行。就像我会右键单击并选择“打印”一样。
试过命令:
C:\>print /D:"CutePDF Writer" test.txt
该打印机应该创建PDF文件(如XPS打印机),但没有设法在打印机队列中显示任何内容。想法?
LPT1
尽可能分配它,这是大多数命令的默认值。
我希望在Windows 7中自动执行一些打印。理想情况下,从命令行。就像我会右键单击并选择“打印”一样。
试过命令:
C:\>print /D:"CutePDF Writer" test.txt
该打印机应该创建PDF文件(如XPS打印机),但没有设法在打印机队列中显示任何内容。想法?
LPT1
尽可能分配它,这是大多数命令的默认值。
Answers:
该print
命令使用以下synatx作为/d:
交换机:
指定要在其上打印作业的打印机。您可以通过指定计算机上连接打印机的端口来指定本地打印机。并行端口的有效值是LPT1,LPT2和LPT3。串行端口的有效值为COM1,COM2,COM3和COM4。您还可以通过其队列名称(\ ServerName \ ShareName)指定网络打印机。如果未指定打印机,则打印作业将发送到LPT1。
这意味着你不能"CutePDF Writer"
用作参数。
有两种方法可行:
为打印机分配COM端口。
COM1:
,以COM4:
到您的打印机。如果您选择,例如,请COM3
使用以下命令进行打印:
print /d:COM3 test.txt
共享打印机。
如果您选择,例如,请CutePDF
使用以下命令进行打印:
print /d:\\%COMPUTERNAME%\CutePDF test.txt
打印已注册的文件类型可以使用鼠标右键打印在Windows(95/98 / NT / 2000)中具有文件类型关联的文件
可以看到此关联,例如,对于.rtf文件
"HKEY_LOCAL_MACHINE\SOFTWARE\Classes\rtffile\shell\printto\command"
其中命令看起来像这样:
"%ProgramFiles%\Windows NT\Accessories\WORDPAD.EXE" /pt "%1" "%2" "%3" "%4"
意思是 :
"wordpad.exe /pt TextFileName PrinterName [ DriverName [ PortName ] ]"
(方括号表示可选)。它可以使用PowerShell从cmd调用,自Vista之后在Windows中提供。
powershell -command "start -verb printto AnyFile.rtf PrinterName [ DriverName [ PortName ] ]"
严格:
"%windir%\System32\WindowsPowerShell\v1.0\powershell.exe" "-Command" "& {Start-Process -FilePath 'test.txt' -ArgumentList '\"CutePDF Writer\"' -Verb 'printto' }"
它适用于几乎所有已注册动词(printto)的已注册文件类型!但打印机驱动程序通常会显示用户对话框 可以在Bullzip Pdf打印机中禁用用户对话框显示。
@mizipzor:
当您按照Dennis的回答时,作业文件成功进入printqueue。
但是由于打印机无法使用TEXT输入文件,因此作业处理卡住了!原因:
因此,您尝试对命令执行的操作将无效:将文本文件发送到创建PDF的“打印机”。并且不可能以任何其他“简单”方式使其工作 ......
控制面板然后是设备和打印机右键单击打印机然后打印机属性确保打印机已共享,“共享名称”为8个字符或更少。在DOS提示符下> net use lpt1:\ 127.0.0.1 \现在您的DOS程序将打印出来!