株式会社ヴァンデミックシステム

Blog

<スポンサーリンク>

GUIでガシガシやるのもいいんだけど、数が多いとスクリプトでやったほうがいいよね。
まずプリンタをインストールする際は、以下を行う必要がある。

1.ドライバのインストール
→pnputilコマンドとAdd-PrinterDriver
2.ポートの作成(ネットワークプリンタとする場合)
→Add-PrinterPort
3.ドライバとポート情報を元にプリンタを追加
→Add-Printer、Set-Printer

ここのサイトがすっごくわかりやすかった。
http://qiita.com/arachan@github/items/801d8ef7b41edc452978

で、上記サイトだと、New-Objectコマンドベースでの手順を案内してくれているけど、それをPrintManagement系のコマンドでやっちゃうよ。
たぶんServerだと2012、Windows8以降のPowershellバージョン4以上で追加されたモジュールだったはず。

じゃ、やってみるよ。
まず、プリンタドライバを入手するよ。
例として、「TOSHIBA eS850/853Series XPS」でやるよ。

ドライバを解凍して、infファイルのありかのパスとドライバ名をチェック。

管理者権限でPowershellを起動し、順次実行していく

#ドライバをドライバーストアにインポートする
#上記で特定したinfファイルを指定
PS C:\> pnputil -a "C:\work\e-ST600_PrintDriver_V350\XPS\XP_VISTA_X64\JPN\eB8mv6.inf"
Microsoft PnP ユーティリティ

処理情報:            eB8mv6.inf
ドライバー パッケージが正常に追加されました。
公開名:            oem11.inf


合計試行回数:              1
正常にインポートされた数: 1


#"TOSHIBA eS850/853Series XPS"用のプリンタドライバとしてドライバーストアから取得
#上記で特定したドライバ名を指定(一言一句同じにする)
PS C:\> Add-PrinterDriver -Name "TOSHIBA eS850/853Series XPS"

#ポート作成
PS C:\> [ipaddress]$TCPIPPort = "192.168.1.211"
PS C:\> Add-PrinterPort -PrinterHostAddress $TCPIPport -Name $TCPIPport

#プリンタの登録
PS C:\> Add-Printer -DriverName "TOSHIBA eS850/853Series XPS" -Name "TOSHIBA eS850/853Series XPS" -PortName "192.168.1.211"

#共有設定、ディレクトリ表示設定をONに
PS C:\> Set-Printer -Name "TOSHIBA eS850/853Series XPS" -Shared $TRUE -Published $TRUE


コマンド実行後のプリンタの状態をチェック。
まず、ちゃんと登録されてる。

Set-Printerで設定した共有設定。
ちゃんとディレクトリ表示のチェックも入っている。

ポートも設定どおりの192.168.1.211に割り振られている。

 

という具合にできるはずだよ。
気が付いたことなど
・pnputilでドライバ登録時に署名されていないドライバの場合、登録できない
→ググればいろいろ情報あり
・Add-Printer実行時にSharedなどのオプションをつけると怒られたので、AddしてからSetした
・プリンタによっては、右クリ-プリンタのプロパティを押した際に、いきなり専用UIに飛ばすプリンタなどもあり、その場合、共有設定タブなどをいじれない場合がある。そんな時にSet-Printerで変えられちゃう。

<スポンサーリンク>

コメントを残す

Allowed tags:  you may use these HTML tags and attributes: <a href="">, <strong>, <em>, <h1>, <h2>, <h3>
Please note:  all comments go through moderation.

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)