サーマルプリンタなどに、定期的に印刷するような業務プログラムを作成して運用していると、
ときどき、プリンタから印刷されませんなんていう連絡を受けることがあります、
プリンタのインターフェースがUSBなのかLANなのかに関わらず発生する現象です。
どちらかというとインターフェースがLANのときに発生する確率が高いような気がします。
LANの場合だと、プリンタに対してPingが通る。
Windowsのデバイスとプリンタを開いても、プリンタキューのアイコンが透けていたりすることもなくプリンタの状態は正常になっています。
この場合、プリンタの電源を入れ直しても、復旧しません。
各ケーブルの抜き差しも効果なしです。
最終的にパソコンを再起動することで問題は解決します。
この問題をPCの再起動なしに解決できる可能性がある方法を紹介します。
プリンタキューに溜まって印刷されない問題の解決策
プリンタの状態が正常に取得できないため、印刷することができない状態なのにも関わらず、
プリンタキューにドキュメントを送ってしまっていることが問題です。
PC再起動で直る場合、プリンタスプーラーをリセットすればなおる可能性が高いです。
プリンタの電源ON,OFFやケーブルをさわってみるなどの対処法が機能しないのに、
PC再起動で直るということは、プリンタ本体やドライバではなく、Windowsのプリンタスプーラーに不具合があると考えられます。
OSを再起動するのと、プリンタスプーラーをリセットするのは同じことです。
スポンサーリンク
プリンタスプーラーをリセットする方法
コマンドプロンプトで、
を実行したあとで、
を実行すればよいです。
経験上、復旧にはしばらく時間がかかります。
5分程度、経過してもダメな場合は効果なしということでしょう。
プログラムの流れ
プログラムの流れは以下のようにすると良いでしょう。
プリンタキューに溜まっているドキュメントを定期的にチェック
↓
キューにドキュメントが送られてから一定時間が経過しても、ドキュメントがなくならない場合、
異常が発生していると判断して、スプーラーをリセット
↓
プリンタキューの中身がなくなるかチェック(5分くらい待ったほうが良いです。)
これで改善されないようであれば、PC再起動しかありません。