プリンターの印刷ジョブを削除しても消えない場合の対処 for Windows
この時期が一年で一番日本中のプリンターが稼働する時では無いでしょうか。そろそろ年賀状に備え、プリンターのカートリッジ交換やら設定でやら忙しくなってくるのではと思います。
そんな時に限っていざ印刷となるとジョブの状態は印刷中なのに一向に動かない。取り消しを押しても「削除中ー印刷中」となって消えないドキュメントがある。パソコンの再起動をしても消えず、お手上げなんて事を聞くのもこの時期が多いような気がします。
この場合はOS側の問題の様な気がしますので、多少強引であっても確実な方法を紹介したいと思います。ただWindowsのsystem32という簡単に言う所のシステム関係の重要なファイルにアクセスする事になりますので、実行は自己責任でとして下さい。いろいろ調べてみるとジョブ削除にはこの方法しかなさそうですね。フリーソフトがあるようですが、やってることは同じだと思います。コマンド操作が不安な方はGUIでもできるので調べてみて下さい。
入力するコマンドを青色で表示しています。
※打ち間違いを防止するため、青色文字のみコピーすると良いかもです。
1.コマンドプロンプトを開きます
・スタート→全てのプログラム→アクセサリ→コマンドプロンプト
・名前を指定して実行をクリックし、【cmd】を入力
2.コマンドを入力しサービスの停止をして下さい
C:\>net stop "Print spooler"
Print Spooler サービスを停止中です.
Print Spooler サービスは正常に停止されました。
3.コマンドを入力しSHDやSPLのファイルが存在しているか確認してください
4.コマンドを入力し.SHD.SPLファイルを削除します
C:\>dir C:\WINDOWS\system32\spool\PRINTERS
ドライブ C のボリューム ラベルは Windows XP です
ボリューム シリアル番号は ****-*** ですC:\WINDOWS\system32\spool\PRINTERS のディレクトリ
2010/11/20 23:29
. 2010/11/20 23:29 .. 2010/11/20 23:34 2,628 ****.SHD 2010/11/20 23:29 1,769,472 ****.SPL 2 個のファイル 1,772,100 バイト 2 個のディレクトリ ****&&&*&*バイトの空き領域
C:\>del C:\WINDOWS\system32\spool\PRINTERS\*.shd C:\>del C:\WINDOWS\system32\spool\PRINTERS\*.spl※PRINTERS\にある.shdと.splの全てを消すように書きましたが、実際は削除出来ないジョブファイルのみで大丈夫かと思います 5.コマンドを入力しサービスを開始してください
C:\>net start "Print spooler"
Print Spooler サービスを開始します.
Print Spooler サービスは正常に開始されました。
※最後忘れる方が多いです。開始させないとプリンターを使った動作でエラーになります
6.印刷ジョブを確認してください。消えなかった印刷ジョブが消えているかと思います
【聞かれそうな質問を先に何点か】
Q.ファイルを削除する時にプロセス使用中とかで消せないみたい
A.サービスが作動しています。【2.】のサービス停止を行いましたか?
Q.コマンドプロンプトで[C:\]ってなに?私の環境だと[D:\]ってなるんだけど。
A.OSのシステムファイルを置いている場所です。[D:\]に入れているなら【dir D:\WINDOWS\system32\spool\PRINTERS】などと全て変更して下さい。
Q.頻繁に起こってコマンド実行するの面倒だ。
A.頻繁に起きるようでしたらバッチファイルを作成しておくと良いかもしれません。
【プリンターのジョブを削除するバッチファイル】
1.メモ帳を開き、以下の四行を書きます
net stop "Print spooler" del C:\WINDOWS\system32\spool\PRINTERS\*.SHD del C:\WINDOWS\system32\spool\PRINTERS\*.SPL net start "Print spooler"2.ファイル名を適当に【printjob_kill】とし拡張子を【bat】で保存します 3.出来たファイルをクリックするとコマンドプロンプトが開き、先ほどと同じコマンドが入力され勝手にコマンドプロンプトが終了します 4.印刷ジョブを見てみると消えなかったジョブが消えているはずです