ゾンビなデバイスドライバを削除してみよう!!

LANアダプタ不調の原因

以前、一号機ことDELL Dimension8200LANアダプタ周りが不調であるということを書いたことがあるが、具体的な症状は以下のとおりだったりする。

  • 新しいLANアダプタを取り付けると、以前使っていたLANアダプタのデバイスドライバが生きている(割り当てられている)状態になる
  • 以前使っていたLANアダプタは、レガシ アダプタであるという表示がされ、ゾンビみたいになっている
  • 結果、新しいやつと以前使っていたそれぞれのLANアダプタに同一のIPアドレスが割り当てられてしまい、動作がおかしくなる
https://hkjunk0.com/wp-content/uploads/legacy_device01.jpg

物理的に存在していないとか動作していないのに割り当て済みになっているって、一体...?

試しに、デバイスドライバの状態を確認してみると、確かに以前使っていたLANアダプタ(Corega CG-LAPCIGT)のドライバが復活している。これが諸悪の根源っぽい。

但しドライバ本体ではなく、パケットスケジューラだけなのが不思議。

で、このパケットスケジューラのドライバを削除しようとしても、本体が見えなくて削除もできない。

https://hkjunk0.com/wp-content/uploads/legacy_device02.jpg

新しいLANアダプタのドライバ(VIA)の他に、以前のドライバ(CG-LAPCIGT)が生きている。

では、どうすればこういったゾンビなデバイスドライバを削除できるのか?

隠されたドライバの表示方法

調べてみたら、そのものズバリの解決策が。

要するに、デバイスマネージャで過去にインストールされた全てのデバイスドライバを表示させてから、不要なドライバを削除するという方法。

具体的な方法は以下のとおり。

まずは、スタートメニューの「ファイル名を指定して実行」から、コマンドプロンプトを起動する。プログラムのアクセサリから起動しても可。

https://hkjunk0.com/wp-content/uploads/legacy_device03.jpg

cmdと入力してOKボタンをクリックすると、コマンドプロンプトが起動する。

次に、2行のおまじないを入力する。

  • set devmgr_show_nonpresent_devices=1
  • devmgmt.msc
https://hkjunk0.com/wp-content/uploads/legacy_device04.jpg

最初は環境変数の設定で、次はデバイスマネージャの起動。

そうすると、デバイスマネージャが起動するので、メニューから「表示」→「非表示のデバイスの表示」を選択する...なんと、隠されていたデバイスドライバが白日の下に曝される(^^;)。

あとは、不要なドライバを削除するだけ。

これは、USBとかの今までにインストールした全てのデバイスドライバを表示させるので、他にも色々と不要なドライバを削除するのが精神衛生上良いかも。

https://hkjunk0.com/wp-content/uploads/legacy_device05.jpg

やっと姿を現したゾンビなデバイスドライバ。削除削除。

で、ゾンビなドライバを削除して非常にすっきりとした状態で再起動してやればあら不思議、正常に新しいLANアダプタが利用可能となる。

https://hkjunk0.com/wp-content/uploads/legacy_device06.jpg

どうしても削除できないドライバは当然必要なドライバなので、そのままに。

ipconfigの結果を見てみても、正常に動作していることが明らか。

https://hkjunk0.com/wp-content/uploads/legacy_device07.jpg

正常にデバイスが認識され、使えるようになった!!めでたしめでたし。

ところで、コマンドプロンプトを使わずに環境変数を登録する方法もあるが、面倒なので割愛。

ということで、長年(?)の疑問が解消して、非常にすっきりとした俺様。

改めて感謝致します>そのものズバリの解決策様。