Windows 7 のコマンドラインから印刷する

Windows 7 のコマンドラインから印刷する

Windows 7 で印刷を自動化したいと考えています。理想的にはコマンド ラインから。右クリックして [印刷] を選択した場合と同じように。

次のコマンドを試しました:

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

そのプリンターは PDF ファイル (XPS プリンターなど) を作成するはずですが、プリンター キューに何も表示されません。何かアイデアはありますか?

答え1

printコマンドはスイッチに次の構文を使用します/d:

ジョブを印刷するプリンタを指定します。プリンタが接続されているコンピュータのポートを指定することで、ローカル プリンタを指定できます。パラレル ポートの有効な値は、LPT1、LPT2、および LPT3 です。シリアル ポートの有効な値は、COM1、COM2、COM3、および COM4 です。また、キュー名 (\ServerName\ShareName) でネットワーク プリンタを指定することもできます。プリンタを指定しない場合、印刷ジョブは LPT1 に送信されます。

つまり、"CutePDF Writer"引数として使用することはできません。

機能する方法は 2 つあります。

  • プリンターに COM ポートを割り当てます。

    1. 開けるスタート → コントロールパネル → デバイスとプリンター
    2. 右クリックしてCutePDFライター選択してプリンターのプロパティ
    3. の中にポートタブで、未使用のポートを から までCOM1:プリンターCOM4:に割り当てます。
    4. たとえば、 を選択した場合はCOM3、次のコマンドを使用して印刷します。

      print /d:COM3 test.txt
      
  • プリンターを共有します。

    1. 開けるスタート → コントロールパネル → デバイスとプリンター
    2. 右クリックしてCutePDFライター選択してプリンターのプロパティ
    3. の中に共有タブで、プリンターを共有することを決定し、共有名を割り当てます。
    4. たとえば、 を選択した場合はCutePDF、次のコマンドを使用して印刷します。

      print /d:\\%COMPUTERNAME%\CutePDF test.txt
      

答え2

登録されたファイルタイプの印刷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 ] ]"

(角括弧はオプションを意味します)。つまり、cmdこのパターンに従ってレジストリ キーからこの情報を使用して実際のアプリを直接呼び出すことができます。または、Windows Vista 以降に同梱されている PowerShell を使用して、この関連付けを通じて間接的に呼び出すこともできます。

powershell "-Command" "& {Start-Process -FilePath  'test.txt'  -ArgumentList '\"Microsoft Print to PDF\"' -Verb 'printto' }"

簡潔な形式 ( powershell -command "start -verb printto AnyFile.rtf PrinterName [ DriverName [ PortName ] ]") または PowerShell プロンプトからの実行は、不明な理由で私の PC では機能しません。

これは、登録された動詞(印刷する)!

追記:インストールされているプリンタを一覧表示する wmic printer list brief

UPD: また、印刷動詞。exceptファイルでは引数を受け付けません。したがって、上記のほとんどすべてが、印刷する印刷追加のプリンタ引数を削除します。

ただし、プリンター ドライバーは通常、ユーザー ダイアログを表示します。Bullzip Pdf プリンターでは、ユーザー ダイアログの表示を無効にすることができます。

答え3

こんにちは。以下は、CutePDF をデフォルトのプリンターに設定する簡単な方法です。DOS の知識があれば、プリンターをデフォルトとして設定しても問題はなく、その後、再度デフォルトのプリンター設定にリセットします。

テキストファイル、htmファイル、batファイル、または任意のテキストファイルを印刷するには、次のように入力します。

  notepad /p test.txt

他のプログラムの場合は、印刷用のコマンドライン形式を見つけます(regeditまたはドキュメント内)

答え4

コントロール パネル、デバイスとプリンターの順にクリックし、プリンターを右クリックしてプリンターのプロパティを選択します。プリンターが共有されており、「共有名」が 8 文字以下であることを確認します。DOS プロンプトで >net use lpt1: \127.0.0.1\ と入力します。これで DOS プログラムが印刷できるようになります。

関連情報