Windows7のタスクバーがフリーズして、スタートボタンが使えないので調べてほしいという依頼を受けた。
パソコンが起動し、デスクトップが表示され、スタートアップに登録されたソフトが起動し終わったタイミングでタスクバーがフリーズしているようだ。
Windowsキーを押すとスタートメニューが表示される。
しかし、メニューをクリックしても反応がない。
キーボードショートカットを使って起動したソフト、例えばタスクマネージャーなどもフリーズしている。
デスクトップ上のアイコンからはソフトを起動できる。
タスクバーのフリーズを解除するには、Ctrl+Alt+Deleteを押して表示される画面でキャンセルをクリックする。
すると、タスクバーのフリーズは解除される。
以後、再起動するまでは正常に使用できるようになる。
ここまで見てきて、多分ハードの障害が原因ではないだろうと思った。
ただ、依頼人のリクエストがあったので、ハードディスクの状態をチェックするソフトをインストールしてみた。
診断結果は予想通り、正常を示した。
迷惑ソフトが動作している可能性も考えてみた。
システム構成(msconfig.exe)を開いて、スタートアップをのぞいてみたがこれといって怪しげなものは見られなかった。
スタートメニューに表示されているソフトも問題はなさそうである。
コントロールパネルからインストールされているソフトを見たが同様だ。
依頼人はこのパソコンを購入してからほとんど使用しておらず、購入後にインストールされたソフトといえばNTTの光回線を利用するようになった時にインストールされたソフトだけのようである。
さて困った。
とりあえず、システムの構成を使ってスタートアップに登録されたプログラムをすべて無効にし、サービスもマイクロソフトのサービス以外をすべて無効にして再起動してみた。
いわゆるクリーンブートであるが、変わらず起動後にタスクバーがフリーズする。
依頼人に聞いてみた。
するとこの現象が起きるようになったのはひと月ほど前だといわれた。
そこでシステムの復元を試みることにした。
システムの復元ポイントの日付を確認していて妙なことに気がついた。
このパソコンでは4年ほど前からWindowsの更新が行われていない。
システムの復元は後回しにして、Windowsの更新を試してみることにした。
これでタスクバーのフリーズ問題が解決する可能性があると思ったからである。
しかし、Windowsの更新は実行できなかった。
必要なサービスが実行されていません。再起動してくださいというメッセージが表示された。
厄介なことになった。
Windowsの更新はとりあえず諦めて、ひと月ほど前の復元ポイントを選んで、システムの復元を実行してみた。
ほとんど使われていないパソコンだけあって、システムの復元は短時間で終わった。
しかし、タスクバーのフリーズは解消しない。
依頼人に再度確認した。
今度は問題が起きたのがひと月前だったかはっきりしないといわれた。
次にWindowsの更新に必要なサービスを手動で再起動してみた。
しかし、前回と同じエラーが表示される。
そこで、Windows7のサービス全体を初期化してみた。
しかし、Windowsの更新は実行できない。
次にもっと古い復元ポイントを選んでシステムの復元を試みることにした。
2年以上前の日付である。
これはNTTの光回線を使い始めたときの日付だ。
しかし、相変わらずタスクバーはフリーズする。
さてどうしよう。
インターネットでみつかる事例は最近のWindowsの更新で起きたタスクバーの障害ばかりである。
4年間、Windowsの更新は実行されていないのだから、参考にならない。
依頼人は普段使うのには困らないからといい始めた。
そこで最後に、タスクバーが壊れてしまった時に行う方法を試してみた。
HKEY_CURRENT_USER \Software \Microsoft \Windows
\CurrentVersion \Explorer \StuckRects2
この2行は連続している。
このStuckRects2というキーを削除してパソコンを再起動する。
再起動時にStuckRects2というキーが作成されるらしい。
しかし、効果はなかった。そう思った。
依頼人から時間切れを宣告されたので、再挑戦を約束して引き上げた。
この後もいろいろ忙しくこの問題を調べる暇はなかった。
しかし、意外なことにこの作業を行った翌日、依頼人からタスクバーはフリーズしなくなったという連絡をもらった。
どうやら、最後に行ったStuckRects2の削除の効果があったらしい。
しかし、Windowsの更新ができない問題は解決していない。
こちらのほうが重要な問題だと依頼人に言ってみたのだが気にしてもらえなかった。