So-net無料ブログ作成

パソコントラブル(その2) [ライフ]

先日パソコンをいつものように使用していると、急に漢字変換が出来なくなりました。
このトピックは自分の記録用のためなので、読んでも面白くないと思います。スキップしてくだい、すみません。現象は、半角/全角切り替えキーを押しても切り替わらず「’」が表示されてしまいました。マウスで入力切替をしてひらがな入力にすることはできますが、変換キーが機能しませんでした。

そこで、キーボードデバイスを確認すると「101/102英語PS/2キーボード」という表示を見つけ、英語入力用のキーボード設定にいつのまにか変更されていることがわかりました。(昔パソコンの設定をしていた時、日本語入力の場合は、「106キーボード」に設定していたことを覚えていたので・・・)

対処方法の1
デバイスで使用されているドライバー等のファイルを確認
C:¥WINDOWS¥system32¥DRIVERS¥i8042prt.sys
C:¥WINDOWS¥system32¥DRIVERS¥kbdclass.sys
C:¥WINDOWS¥system32¥DRIVERS¥TPInput.sys
C:¥WINDOWS¥system32¥kbd101.dll
C:¥WINDOWS¥system32¥kbdjpn.dll
が使用されていることを確認。

まず、Lenovoのサポートサイトで同様のトラブルの事例がないか検索してみました。
すると、英語キーボード配列にかってに変ってしまう事例を発見しました。
すぐに回復手順を実行し、「日本語PS/2キーボード(106/109キーCtrl+英数)」への変更方法を試してみました。デバイスの表記は以下のように変更されました。
C:¥WINDOWS¥system32¥DRIVERS¥i8042prt.sys
C:¥WINDOWS¥system32¥DRIVERS¥kbdclass.sys
C:¥WINDOWS¥system32¥DRIVERS¥TPInput.sys
C:¥WINDOWS¥system32¥kbd106n.dll(日本語PS/2キーボード(106/109キーCtrl+英数)用ドライバー)
C:¥WINDOWS¥system32¥kbdjpn.dll

ちなみにkbd106.dllは、日本語PS/2キーボード(106/109キー)用ドライバー

再起動をかけ問題が解決することを確認してみると、以前現象は変りませんでした。

対処方法の2
前回のトラブルの時同様、この中のファイルが破損している可能性を疑いました。
これも前回の経験からsystem32の中のファイルは、消去すると、自動的に圧縮ライブラリから新しくファイルが生成されることを予想して、各ファイルを消去してみました。
するとTPInput.sys以外のファイルは自動生成されました。
TPInput.sysのファイル無しで再起動をかけたら、マウスポインターがびくともしなくなってしまいました。
そこで、USB外付けディスクのバックアップからRecovery&Rescueプログラムを使用してこのファイルを元のディレクトリに戻しました。(これも前回の教訓によりバックアップ体制を確立しておいたので、意外と簡単でした。)
マウスポインターは動くようになりましたが、依然としてトラブルは解消しませんでした。

対処方法の3
Lenovo System ToolBox(PC Doctorの後継ソフト)をダウンロードしてキーボードテストを実施してみました。その結果は、問題なしでした。どうやらデバイスが管理する範囲は、特定のキーが押された時に、押されたという事象をアプリケーションに伝えるまでのようで、キーボード配列により押されたキーに従い特定の機能を実行する部分は、レジストリおよびアプリケーションレイヤー、つまりIMEの役割のようでした。

ということで、次は、MS IMEを疑ってみることにしました。

とりあえず、今年日本に帰った時に持ってきたMS OFFICE 2003のCDを突っ込み、MS IMEの修復を試してみました。結果は、変化なしでした。

対処方法の4
MS Wordで漢字入力の現象をテストしてみたところ、変換キーでの変換はできないけれど、右マウスメニューの変換を選択すると変換が可能だということがわかりました。ということは、変換機能そのものがダメージを受けているわけではなく、変換キーを押しても変換機能が動かないことが問題だと分かりました。そして隣のスペースキーを押すと変換機能が動くことが、その後分かりました。この現象よりキー配列が日本語キーボード用に設定されておらず、依然として英語キーボード配列になっていることが予想されました。

IMEの設定をいろいろと変更して入力をテストしてみたところ、キーボード設定が「日本語(MS-IME2002)」で、入力方式が「IMEスタンダード」の時だけ、キーボード配列が日本語になるようで、正しい動作が得られることを発見しました。この現象から推測すると、IME2003のバグの可能性が高いという結論に至りました。

MSサポートHPでIMEのトラブルを検索すると、2002版以降で同様の現象があることを発見しました。
原因は、レジストリのLeyout Fileの値がKBDJPN.DLLから他の値に勝手に書き換えられてしまうらしいです。この問題は、Windows XP SP1aで修正されている(現在のレベルはSP3)ということでしたが、怪しいので、レジストリーを確認すると、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\00000411の「Layout File」の値がKBDUS.DLL(正解はKBDJPN.DLL)になっていました。
レジストリエディターで、値を「KBDJPN.DLL」に変更して再起動した結果、正常な動きに戻りました。

なぜデバイスの使用ファイルが、KBDJPN.DLLで表示されたのか、またWindows XPのレベル等、まだ、疑問は残りますが、とりあえず問題は解決しました。
ここまで所要時間約12時間

ようやく漢字変換がまともに出来るようになりました。やれやれ
日本に居ない私にとってパソコンのトラブルは、とても厄介な問題ですが、こんな時は、自分の前職の経験が生きてよかったと思います。
nice!(0)  コメント(1) 

nice! 0

コメント 1

forestno

ご無沙汰してすみません。
大変ご苦労様でした。
私も、次元は違うのですが,パソコンの問題で気違いみたいになりました。最後の原稿のしあげのとき、ウィンドウズのソフト、が言う事を聞いてくれなかったからです。
礼ちゃんの誕生日も忘れていて、ごめんなさいね。
by forestno (2009-11-14 20:54) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

メッセージを送る

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。

×

この広告は1年以上新しい記事の更新がないブログに表示されております。