Windows11でプリンタ追加を完全自動化する方法

Windows11でプリンタを追加する場合、通常は「設定」からプリンタを検索し、使用するプリンタを選択して設定します。

しかし、企業などでPCを数十台・数百台とセットアップする場合、端末ごとにプリンタを手動で追加する作業は大きな負担になり設定ミスも発生しやすくなります。

そこで今回は、Windows11に標準で搭載されているコマンドを利用して、プリンタの追加を完全に自動化する方法を紹介します。

また、Bat化することでプリンタを自動的に構成できるため、大量のWindows11端末を展開する際の作業時間を大幅に削減できます。

目次

プリンタ追加完全自動化の裏側

プリンタ追加の完全自動化は、特定のコマンドを実行することで実現が可能です。

そのコマンドはWindows11に標準で搭載されています。

では具体的なコマンドや使い方を解説していきます。

1.ポートの作成

プリンタを利用するためには、まずポートが必要となります。
※すでに存在するポートを使用する場合は不要です

そのポートを作成するコマンドは以下の通りです。

cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnport.vbs -a -s %computername% -r "<ポート名称>" -o raw -h "<ポートIP>" -n 9100

<ポート名称>:作成したいポートの名称を入力します
<ポートIP>:追加したいプリンタのIPアドレスを入力します

例)

cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnport.vbs -a -s %computername% -r "TESTPort" -o raw -h "192.168.1.10" -n 9100

2.プリンタの追加

本題であるプリンタの追加におけるコマンドは以下の通りです。

cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnmngr.vbs -a -p "<プリンタ名称>" -m "<ドライバ名称>" -r "<ポート名称>"

<プリンタ名称>:追加したいプリンタの名称を入力します
<ドライバ名称>:追加したいプリンタのドライバの正式名称を入力します
<ポート名称>:追加したいプリンタの使用したいポートの名称を入力します

例)

cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnmngr.vbs -a -p "TESTPrinter" -m "OKI B433 PCL6" -r "TESTPort"

ドライバの正式名称の調べ方は「Winキー」+「Rキー」を同時に押下し、printui /sと入力してプリントサーバのプロパティ画面を開くことで確認できます。

「ドライバ」タブに、PCにインストールされているプリンタのドライバ名称が一覧化されています。

3.印刷設定ファイルの適用

追加したプリンタの印刷設定(用紙サイズなど)は各メーカーのデフォルトとなっています。

場合によっては、横向きで印刷したい場合や、A5サイズで印刷したい場合もあるかもしれません。

その場合は、あらかじめ設定しておいた印刷設定を特定のファイルに保存し、それを読み込ませることで印刷設定までも自動で設定してくれるようになります。

印刷設定を特定のファイル(INIファイル)に保存する方法としては以下のコマンドです。

rundll32 printui.dll,PrintUIEntry /Ss /n "<プリンタ名称>" /a "<INIファイルの保存先>"

<プリンタ名称>:印刷設定を行ったプリンタの名称を入力します
<INIファイルの保存先>:設定ファイルの保存先を完全パスで入力します

例)

rundll32 printui.dll,PrintUIEntry /Ss /n "TESTPrinter" /a "E:\Printer\TESTPrinter.INI"

また、保存した設定ファイルを、追加したプリンタに適用したい場合は以下のコマンドです。

rundll32 printui.dll,PrintUIEntry /Sr /n "<適用対象のプリンタ名称>" /a "<INIファイルの完全パス>" 2 7 c d u g r p

<適用対象のプリンタ名称>:対象となるプリンタの名称を入力します
<INIファイルの完全パス>:保存してある設定ファイルのパスを完全パスで入力します

例)

rundll32 printui.dll,PrintUIEntry /Sr /n "TESTPrinter" /a "E:\Printer\TESTPrinter.INI" 2 7 c d u g r p

プリンタ追加を完全自動化する方法

プリンタ追加を完全自動化するには、それぞれのコマンドをまとめ、Bat化することでできます。
以下を参考にしてみてください。

@echo off

rem ポートの作成
cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnport.vbs -a -s %computername% -r "TESTPort" -o raw -h "192.168.1.10" -n 9100
timeout -t 3

rem プリンタの作成
cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnmngr.vbs -a -p "TESTPrinter" -m "OKI B433 PCL6" -r "TESTPort"
timeout -t 3

rem 印刷設定ファイルの適用
rundll32 printui.dll,PrintUIEntry /Sr /n "TESTPrinter" /a "E:\Printer\TESTPrinter.INI" 2 7 c d u g r p
timeout -t 3

上記コマンドにより、”OKI B433 PCL6″のドライバを使用した”TESTPrinter”というプリンタがIPアドレス”192.168.1.10″の”TESTPort”というポートに追加され、”E:\Printer\TESTPrinter.INI”の印刷設定ファイルを読み込みます。

また、上記コマンドはプリンタ名やポート名を直接指定する形式となっていますが、WinDeployAutoではコマンドの内容をわざわざ編集することなく自由に決めることができるBatファイルを提供しています。

ご興味のある方は以下よりダウンロードしてみてください。

その他完全自動化におすすめのコマンド

プリンタの追加だけでなく、削除や通常使うプリンタを変更したい場合もあるかもしれません。

そういった際に使用できるコマンドについて解説します。

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

プリンタドライバを手動ではなく自動でインストールしたい場合は、まず各社の公式サイトより入手したINFファイルをWindowsのドライバストアへ追加します。

pnputil /add-driver "<INFファイルの完全パス>"

<INFファイルの完全パス>:インストールしたいドライバのINFファイルのパスを完全パスで入力します

例)

pnputil /add-driver "E:\OKI B433\Drivers\_PCL\OKW3X06B.INF"

追加後、以下のコマンドにより対象のプリンタドライバをインストールします。

rundll32 printui.dll,PrintUIEntry /ia /m "<インストール対象のドライバ名称>"

<インストール対象のドライバ名称>:インストールしたいドライバの正式名称を入力します

例)

rundll32 printui.dll,PrintUIEntry /ia /m "OKI B433 PCL6"

プリンタの削除

すでに存在しているプリンタを削除したい場合は、以下のコマンドを入力します。

cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnmngr.vbs -d -p "<プリンタ名称>"

<プリンタ名称>:削除したい対象のプリンタの名称を入力します

例)

cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnmngr.vbs -d -p "TESTPrinter"

ポートの削除

特定のポートを削除したい場合は、以下のコマンドを入力します。

cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnport.vbs -d -s %COMPUTERNAME% -r "<ポート名称>"

<ポート名称>:削除したい対象のポートの名称を入力します

例)

cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnport.vbs -d -s %COMPUTERNAME% -r "TESTPort"

「Windowsで通常使うプリンタを管理する」の無効化

印刷する際に「通常使うプリンタ」が勝手に変わってしまうという経験はないでしょうか。

原因としては、Windows側で「最後に使用したプリンタを自動的に通常使うプリンタに設定する」機能が有効になっているためです。

その機能を無効にすることで、勝手に変わってしまうことはなくなります。

無効化の方法としてはいくつか方法があるので紹介します。

1.コマンドで行う場合

コマンドで行う場合は以下のようにレジストリを変更することで無効化が可能です。

reg add "HKCU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows" /v "LegacyDefaultPrinterMode" /t REG_DWORD /d "1" /f

2.手動で行う場合

「設定>Bluetoothとデバイス>プリンターとスキャナー>Windowsで通常使うプリンターを管理する」をオフにすることで無効化が可能です。

通常使うプリンタの変更

通常使うプリンタを変更したい場合は、以下のコマンドを入力します。
※「Windowsで通常使うプリンタを管理する」が有効になっていれば変更の意味がなくなるので注意

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

<プリンタ名称>:通常使うプリンタとしたい対象のプリンタの名称を入力します

例)

cscript C:\Windows\System32\Printing_Admin_Scripts\ja-JP\prnmngr.vbs -t -p "TESTPrinter"

まとめ

Windows11でプリンタを追加する作業は、1台だけであれば手動で設定しても大きな負担にはなりません。

しかし、複数台のPCに同じプリンタを設定する場合、1台ずつ同じ操作を繰り返す必要があり、作業時間が増えるだけでなく、設定ミスが発生する可能性も高くなります。

今回紹介した方法では、Windows11に標準搭載されているコマンドを利用して、プリンタポートの作成、プリンタの追加、印刷設定の適用までを自動化しました。

さらに、プリンタドライバのインストールやポートの削除、通常使うプリンタの設定などもコマンドから実行できるため、用途に応じて組み合わせることで、より柔軟なプリンタ設定の自動化が可能です。

特に、これらのコマンドをBatファイルにまとめておけば、PCのキッティングや大量のWindows11端末を展開する際に、プリンタ設定をほぼ自動で完了させることができます。

今回紹介した方法を、Windows11のキッティング作業を効率化するための一つの手段として活用してみてください。


WinDeployAutoでは、Windowsのセットアップや定型業務の自動化・効率化をテーマに、Bat・PowerShell・Python などを活用した仕組みづくりを行っています。

  • Windowsセットアップを自動化したい
  • 繰り返し作業を効率化したい
  • 現場の運用負荷を減らしたい

このようなお悩みがありましたら、ぜひお問い合わせフォームよりお問い合わせください。

今後も、Windowsの展開・運用・自動化に役立つ情報を発信していきます。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

システムエンジニアとしてWindows構築や業務自動化に携わってきました。
PowerShellやPython、AIを活用し、現場の課題を解決することが得意です。
「面倒な作業をなくしたい」「もっと効率化したい」そんな想いを形にします。

コメント

コメントする

目次