Windowsから頑固なプリンターを完全に削除する方法

Windowsでプリンターがなかなか消えない時の対処法は、ちょっと面倒ですが、意外とよくあるものです。コントロールパネルからプリンターが消えなかったり、削除しようとすると「アクセスできません」や「プリンターポートが使用中です」といったエラーが何度も表示されたりすることがあります。さらに、プリンターが印刷キューやレジストリには表示されているのに、通常の場所に表示されないこともあります。基本的な方法を試してもプリンターが消えない場合は、実際に効果があった方法をご紹介します。コマンドラインツールとレジストリ操作を組み合わせたものです。ネタバレ注意:常に完璧というわけではありませんが、Windowsに手動で削除させようと何時間も費やすよりはずっとましです。念のため言っておきますが、レジストリをいじるのはリスクが伴うので、必ず事前にバックアップを取ってください。

Windowsでプリンターを適切に削除する方法

まずは標準的な方法を試してください。通常はそれで十分です。

プリンターがまだ表示され、「デバイス」または「プリンターとスキャナー」に表示されている場合は、そこから始めてください。これはよくある方法ですが、Windowsが複雑に絡み合っている場合やプリンターが不安定な場合は、必ずしもうまくいくとは限りません。そのため、「設定」 > 「デバイス」 > 「プリンターとスキャナー」を開いてください(またはms-settings:printersアドレスバーに入力してください)。なかなか消えないプリンターを選択し、「デバイスの削除」をクリックしてください。確認すると、消えるかもしれません。消えない場合は、無視しないでください。追加の手順が必要であることを示しています。

昔ながらのコントロールパネルから削除することもできます。「ファイル名を指定して実行」control /name Microsoft. DevicesAndPrintersダイアログ(Win + R)またはコマンドプロンプトから実行します。プリンターを見つけて右クリックし、「デバイスの削除」を選択します。特にネットワークプリンターや共有プリンターの場合は、この追加手順で問題が解決することもあります。

印刷キューがまだアクティブな場合、Windows が削除をブロックする可能性があります。クリーンな状態から始めるには、コントロールパネルの同じリンクから印刷キューを開き、「プリンター」 > 「すべてのドキュメントのキャンセル」に進みます。このクリーンアップを活用してから、デバイスの削除を再度試してください。環境によっては、ネットワークポリシーや GPO の制限によって削除が困難になる場合があるので、ご注意ください。

より詳細なクリーニングには印刷管理コンソールを使用します

これはかなり信頼性が高いです。 で起動しますprintmanagement.msc「プリントサーバー」 > お使いのコンピュータ > 「プリンタ」に移動します。問題のあるプリンタを見つけて右クリックし、「削除」を押します。一部のマシンでは、この方法でシステムに固着したプリンタを外すことができます。特に、通常のコントロールパネルにプリンタが表示されない場合に効果的です。

コマンドラインマジック – Windows スクリプトと PowerShell

GUIメソッドが失敗した場合は、Windows組み込みスクリプトを使用してください。管理者権限でコマンドプロンプトまたはPowerShell(管理者として実行)を開き、次のコマンドですべてのプリンターを一覧表示します。

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -l

これにより、インストールされているすべてのプリンターがダンプされます。削除するプリンターの正確な名前を探します。

削除するには、次のコマンドを実行します。

cscript "C:\Windows\System32\Printing_Admin_Scripts\en-US\prnmngr.vbs" -d -p "Name of Printer"

「プリンター名」をリストにある正確な名前に置き換えてください。注: 名前にスペースが含まれている場合は引用符が必要です。

または、より現代的なアプローチである PowerShell に切り替えて、次のコマンドで削除します。

Remove-Printer -Name "Name of Printer"

PowerShell に慣れている場合は、このコマンドレットで十分です。場合によっては、古いスクリプトや WMI よりもうまく機能することもあります。いずれにせよ、どちらの方法も優れているので、最も簡単だと感じる方を選んでください。

通常の方法では不十分な場合の対処法 – 強制除去

印刷スプーラーを手動でクリアする

これは少し強引な方法ですが、効果はあります。プリンターが動かなくなる原因は、スプールファイルが残っていることがほとんどです。管理者権限のPowerShellまたはコマンドプロンプトで以下のコマンドを実行してください。

net stop spooler del %systemroot%\System32\spool\printers\*.shd /F /Q del %systemroot%\System32\spool\printers\*.spl /F /Q net start spooler 

スプーラサービスを停止し、すべての印刷ジョブファイルを削除してから再起動します。これは、削除を妨げている「ゴースト」印刷ジョブを効果的に削除する方法です。

レジストリから削除する(問題がない場合のみ)

新たなレベルのものがここにあります。 を開いてregedit.exe、こちらへアクセスしてください:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers

プリンターのキー(「HP LaserJet…(Copy 1)」のような表示)を見つけます。右クリックして削除します。その後、PCを再起動します。通常はプリンターは表示されなくなりますが、関連エントリが残っている場合は、Windowsにプリンターが表示されることがあります。

「この操作は制限によりキャンセルされました」のようなエラーが表示された場合は、グループポリシーによって削除操作がブロックされている可能性があります。gpedit.msc のユーザーの構成」→「管理用テンプレート」→「コントロールパネル」→「プリンター」で、「プリンターの削除を禁止する」が有効になっているかどうかを確認してください。ドメインポリシーによって手動削除が禁止されている場合があり、その場合はドメイン管理者のサポートが必要になる可能性があります。

もう一つのヒント:デバイスマネージャー(devmgmt.msc)で「表示」 > 「非表示のデバイスの表示」を有効にし、非表示のプリンターを削除してみてください。印刷キューを展開し、残っているものがあれば削除してください。

プリンタドライバのアンインストール – 削除後のクリーンアップ

残ったドライバーパッケージを削除する

プリンターが消えても、ドライバーファイルが残っている可能性があります。これらを削除するには、services.mscスプーラーを実行して再起動するか、PowerShellを使用してください。

Restart-Service spooler -Verbose

次に、印刷管理ツールを再度起動します(詳細については、こちらのドキュメントをご覧ください)。 「プリントサーバー」 > お使いのサーバーで、「ドライバー」を選択します。インストールされているすべてのプリンタードライバーが表示されます。削除したいドライバーを右クリックし、「ドライバーパッケージの削除」を選択します。特にinfファイルと関連ファイルなど、すべてを確認してください。

手軽なGUI方式をご希望の場合は、printui /s /t2管理者権限のコマンドプロンプトで実行してください。プリントサーバーのプロパティウィンドウが開きます。そこでドライバーを探して削除してください。印刷管理コンソールほど徹底的ではありませんが、素早くクリーンアップできます。

まとめると、プリンターが削除できなくなるのは、隠れたドライバーやレジストリエントリの残骸が原因である場合があります。スプーラーのリセット、レジストリのクリーンアップ、ドライバーの削除を組み合わせることで、これらのゴーストを完全に除去できる場合が多いです。ただし、Windowsは細かいことに細心の注意を払う必要があるため、重要なものを削除しないように注意してください。