LoginSignup
5
13

More than 3 years have passed since last update.

プリンター関連のコマンドまとめ

Posted at

概要

Windows のコマンドラインからプリンター関連の操作を行うコマンドのまとめです。

1. プリンタードライバーをインストールするためのサービスの準備

Print Spooler サービスと Device Install サービスを自動起動するように構成して起動します。
これらのサービスが起動していないとプリンタードライバーのインストールが行えません。

PowerShell Set-Service Spooler -StartupType Automatic
PowerShell Start-Service Spooler
PowerShell Set-Service DeviceInstall -StartupType Automatic
PowerShell Start-Service DeviceInstall

Windows Server で Print Spooler サービスが利用できない場合は プリントサーバー 機能をインストールします。

PowerShell Install-WindowsFeature Print-Server

2. プリンタードライバーのインストール

INFファイルを使用してプリンタードライバーをインストールします。
指定するプリンタードライバー名はINFファイル内に記載されています。

pnputil /add-driver (INFファイルのパス) /install
PowerShell Add-PrinterDriver -Name 'プリンタードライバー名'

INFファイルを開くと、OSのアーキテクチャごとのセクションにプリンタードライバー名が記載されています。

sample.inf
; sample.inf
;
; (C) Printer Driver Inc. 2019
; Printer Driver for Windows

...(略)...

[XXXXX.NTamd64]
"プリンタードライバー名"  = XXXXX,XXXXX
"プリンタードライバー名"  = XXXXX,XXXXX
"プリンタードライバー名"  = XXXXX,XXXXX

...(略)...

3. プリンターポートの追加 (必要に応じて)

任意のプリンターポートで印刷する場合はプリンターポートを追加します。

PowerShell Add-PrinterPort -Name 'プリンターポート名'

Windows の初期状態では以下のプリンターポートが既に追加されています。

>PowerShell Get-PrinterPort

Name                 ComputerName         Description          PortMonitor
----                 ------------         -----------          -----------
COM1:                                     ローカル ポート      Local Monitor
COM2:                                     ローカル ポート      Local Monitor
COM3:                                     ローカル ポート      Local Monitor
COM4:                                     ローカル ポート      Local Monitor
FILE:                                     ローカル ポート      Local Monitor
LPT1:                                     ローカル ポート      Local Monitor
LPT2:                                     ローカル ポート      Local Monitor
LPT3:                                     ローカル ポート      Local Monitor
PORTPROMPT:                               ローカル ポート      Local Monitor
SHRFAX:                                   FAX モニター ポート  Microsoft Shared ...

印刷データをファイルに直接出力する場合はプリンターポート名にファイルパスを指定します。

PowerShell Add-PrinterPort -Name 'C:\output.ps'

ダミーのプリンターなどを使用する場合など、印刷データを出力する必要がない場合は null ポートを指定します。

PowerShell Add-PrinterPort -Name 'NUL:'

4. プリンターの追加

プリンタードライバーとプリンターポートを関連付けてプリンターを追加します。

PowerShell Add-Printer -Name 'プリンター名' -DriverName 'プリンタードライバー名' -PortName 'LPT1:'

5. 通常使うプリンターに設定する

プリンターを通常使うプリンターとして設定します。

cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnmngr.vbs -p "プリンター名" -t

6. 印刷テストを行う

プリンターにテストページの印刷データを送信します。

cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnqctl.vbs -p "プリンター名" -e

7. プリンターを一時停止状態にする

プリンターを一時停止状態にして一時的に印刷データを処理しないようにします。

cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnqctl.vbs -p "プリンター名" -z

一時停止状態を解除します。

cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnqctl.vbs -p "プリンター名" -m

8. 印刷ジョブの一覧を確認する

すべてのプリンターの印刷ジョブの一覧を確認します。

cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnjobs.vbs -l

指定したプリンターだけの印刷ジョブの一覧も確認できます。

cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnjobs.vbs -p "プリンター名" -l
5
13
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
13