29歳、離婚しました。

家事は元妻にまかせっきり。そんな生活力ゼロ男の離婚後の生活を綴ったブログです。著者がその後の生活の中で見つけた生活術やお役立ち情報をお届けします。

PCにログオン時、通常使うプリンターをbatやPowerShellで設定する方法

   

PCで作成した資料を印刷しようと、ソフトウェアの『印刷』ボタンをクリック。
このとき、こんな困った問題が起こることがあります。

いつもと違うプリンターから印刷されてしまった!

この問題は、複数のプリンターへの出力が可能となっている共用PCで、特に起こりやすい問題です。

Windows PCでは『通常使うプリンターに設定』という機能があり、コントロールパネルの『デバイスとプリンター』画面で設定できます。

コンテキストメニュー内の『通常使うプリンターに設定』メニューの位置を示した図

そして頻繁に使うことが多いプリンターを『通常使うプリンターに設定』しておけば、ソフトウェアからの印刷操作は意図的に変更しないかぎり、『通常使うプリンターに設定』したプリンターから出力される仕様です。

スポンサーリンク

共用PCでの印刷作業は、通常プリンターAを使うことになっており、プリンターAが『通常使うプリンターに設定』されている環境があったとします。

ところがあるユーザーがこれを知らず、自分が使いやすいように別のプリンターBに変更して使用。
その後に共用PCを使ったユーザーが、変更に気付かずに印刷操作を実行すると、想定していたプリンターAから出力されないという問題が起こります。

環境によっては、Aプリンターはモノクロ印刷専用、Bプリンターはカラー両面印刷専用といったように、プリンターごとに役割を決めて使っている場合もあるでしょう。
そのため誤って別のプリンターから出力されると、業務上大きな問題となってしまうことも。

この問題はPCの起動時やログオン時に、通常使うべきプリンターを『通常使うプリンターに設定』するようにしておけば、発生を未然に防ぐことができます。

そこで今回は、PCにログオン時、特定のプリンターを『通常使うプリンターに設定』する方法をご紹介します!

コマンド操作により、特定のプリンターを『通常使うプリンターに設定』する方法

特定のプリンターに対して『通常使うプリンターに設定』する方法はいくつかありますが、今回はbatやPowerShellのコマンド操作による設定方法を一つずつご紹介しましょう。

尚、本エントリーの内容は、Windows 10 Pro 1803で正常に動作することを確認しています。

batのコマンド操作による設定方法

batを使って『通常使うプリンターに設定』する場合、printui.dllの機能を使用すれば対応可能です。

具体的には以下のようなコマンドを、コマンドプロンプトで実行します。

たとえばFaxという名前のプリンターを『通常使うプリンターに設定』する際は、コマンドプロンプトを起動してから以下コマンドを実行してください。(下記コマンドが記述されたファイルをSet-DefaultPrinter.batというファイル名で保存し、ダブルクリックで実行しても設定可能です。)

PowerShellのコマンド操作による設定方法

PowerShellを使って設定する場合は、たとえば以下のようなコマンド操作で設定できます。

Faxという名前のプリンターを『通常使うプリンターに設定』する場合、PowerShellを起動し、以下コマンドを実行してください。(下記コマンドが記述されたファイルをSet-DefaultPrinter.ps1というファイル名で保存し、実行しても設定可能です。)

PCにログオン後、コマンド操作を用いて手動で通常使うプリンターの設定を変更する場合は、以上のようなコマンド操作を実行します。

※Windows10では本コマンドを実行する前に、『設定』→『デバイス』→『プリンターとスキャナー』→『Windowsで通常使うプリンターを管理する』のチェックを外してください

PCにログオン時、特定のプリンターを『通常使うプリンターに設定』する方法

PCにログオン時、自動的に通常使うプリンターの設定を変更する場合は、コマンド操作により、特定のプリンターを『通常使うプリンターに設定』する方法で紹介しているPowerShellのコマンドが記述されたファイルを、タスクスケジューラでPCにログオン時に実行するよう設定すればOK!

まずは『Windows』キーを押しながら『R』キーを押下し、『ファイル名を指定して実行』画面を表示。

ファイル名を指定して実行の画面

次に『名前』のテキストボックスにtaskschd.mscと入力してから、『Enter』キーを押下してください。

するとタスクスケジューラが起動するので、左側のツリーペインの任意の項目を右クリックし、『タスクの作成』をクリック。
『全般』タブで任意の名前を入力し、『タスクの実行時に使うユーザーアカウント』にusersを指定します。

次に『トリガー』タブ上の『新規』ボタンをクリックし、以下設定を行います。

  • タスクの開始:ログオン時
  • 設定:任意のユーザー

最後に『操作』タブで『新規』ボタンをクリックし、以下の設定を行ってください。

  • 操作:プログラムの開始
  • プログラム/スクリプト:powershell
    加えて以下例を参考に、『引数の追加』にPowerShellファイルのパス(保存先)を指定

パスには、コマンド操作により、特定のプリンターを『通常使うプリンターに設定』する方法で紹介しているPowerShellのコマンドが記述されたファイルのフルパスを指定してください。

尚、PowerShellを使用する場合は、ExecutionPolicyがRemoteSignedなど、事前にPowerShellスクリプトが実行可能なようにPCが構成されている必要があります。
未構成の環境では、管理者権限で実行したPowerShellでSet-ExecutionPolicy RemoteSignedを実行すれば変更可能です。

以上の設定により、PCにログオンすると通常使うプリンターが変更・設定されます。(以下画像は、通常使うプリンターをFaxに変更するPowerShellスクリプトの実行後の様子。)

通常使うプリンターに『Fax』が設定されている様子

AD環境では、batやPowerShellスクリプトをログオンスクリプトとして実行するようにGPOを設定し、対象のPCが属するOUに対してリンクすれば、複数のPCに対して一括で設定することも、もちろん可能です!

※GPOの[コントロールパネルの設定]-[プリンター]でも設定可能ですが、条件分岐の結果に応じて設定対象を変更する場合など、細かな制御をしたい場合はログオンスクリプトを使う必要があります。

PCにログオン時、特定のプリンターを『通常使うプリンターに設定』したいときは、今回ご紹介した方法を参考に設定を行ってみてくださーい!

スポンサーリンク

 - Windows, デジタル・家電

ピックアップ コンテンツ&スポンサーリンク