INASOFT 管理人のひとこと


フリーソフトダウンロードサイト「INASOFT」の管理人 矢吹拓也 が日々の「ひとこと」を語るページです。
2021年1月1日より、旧ブログ(blog.inasoft.org)からお引越ししました。
・INASOFT Webサイト: https://www.inasoft.org/
・管理人のふたこと(長文記事/寄稿文): https://www.inasoft.org/talk/
本業の方のお仕事が再び忙しくなりつつあるので、断続的にしばらく更新が止まることがあります。

目次 | ←前へ / 2020-02-20 00:00 / 次へ→ / 最新へ⇒

■Windows10を1909アップデートしたら、エクスプローラーの検索窓のIME状態の挙動が変わった?

2020/ 2/20 0:00:00


RSSRSS配信中

https://www.inasoft.org/








一昨日、フィードバックから、Windows10をver.1909にアップデートしたら、エクスプローラーの検索窓のIME状態を変えられなくなった、というご意見をいただきました。

NumLockLockでIME状態を自動でONにする設定をしていたのだが、どうも、そうならなくなったとのこと。(もちろん手動では変えられる)

実際、手元の環境で試してみると、再現できました。

最近のWindowsでの挙動の変化ということらしいですが、詳細は不明です。

202002_NLLIME1.png

NumLockLockを常駐させ、IMEが常にONになるように設定した場合、普通のウィンドウ上(管理者権限で動作しているウィンドウを除く)であれば、IMEを常にONにする機能が働きますが、上記の画像のように、エクスプローラ右上の検索窓にカーソルを置いた場合に限り、この機能が働きません。

これは何が起きているのか?

実際、プログラム中で何が起きているのかと思い、デバッグ用のコードを仕込んでみました。

202002_NLLIME2.png

hActiveWindowは、GetForegroundWindow() APIで取得したウィンドウハンドルです。

これに対し、SendMessageでWM_IME_CONTROLで0x05(IMC_GETOPENSTATUS)を送ると、IME状態がONなのかOFFなのかを取得することができます。

上記の画面のような状態で、WM_IME_CONTROLの5(IMC_GETOPENSTATUS)が何を返しているのか調べました。

デバッグ用の仕込みを入れることで、IMEがONであると認識していれば、Windowsの標準の警告音が鳴り続けます。

で、実際動かしてみたら、Windowsの標準の警告音が鳴り続けました。

(画面上、IME状態はOFFであるにも関わらず!)

というわけで、画面上のステータスと、Windows APIが返すステータスが不一致であるという、よくわからない現象に遭遇していることが分かりました。

ユーザーの情報によれば、この現象はWindows10を1909にアップデートしたら起きるようになったとのことなので、他のバージョンでは起きないものと思われます。

さて、何が起きているのか? 例えば、次のようなことが考えられます。

  • エクスプローラーの検索窓だけ、管理者権限で動いているため、外部のウィンドウメッセージを受け付けてくれない。
  • カーソルが置かれている窓と、GetForegroundWindow()が返すウィンドウハンドルが、実は異なっている。例えば、編集ボックス自体と、プルダウン表示している最近入力した選択肢のウィンドウが別で管理されており、画面上のIME状態表示とWM_IME_CONTROLが返す値が異なっている、あるいは、見た目カーソルの置かれているアクティブな入力窓とGetForegroundWindow()が返すウィンドウハンドルがそれぞれ別のものを指した状態になってしまっている。
フィードバックでは、ユーザーからは状況の改善を依頼されているのですが、悪化したのはOSの側(プログラムに画面状態とは異なるウソ情報を返している?)な感じがするため、ちょっと一介の日曜プログラマの手には負えない感じがしています。OSの次回アップデートで状況が改善するのを祈るのみな気がします。



Posted by kiyohiro at 2020/02/20 11:27:03
どうもお世話になってます
的外れかもですが
最近同じような記事を見たような気がして
軽く探しました
もしかして以下の影響ですかね
https://www.softantenna.com/wp/windows/windows-10-version-1909-explorer-buggy/


Posted by Ayacy at 2020/02/20 11:33:19
なるほど、有力情報、ありがとうございます。
今後のWindows 10の更新による改善でどうにかなりそうな感じがしますね。

Posted by ごんたママ at 2020/02/29 23:55:37
フィードバックを送った者です。
細かく検証していただき、感謝しております。
マイクロソフト側の問題でしたのにお手数おかけして申し訳ありませんでした。
ver.1903に戻したところ、正常に動くようになりましたので、次回のアップデートで修正されるのを期待しつつ、様子を見たいと思います。
このたびは本当にありがとうございました。

Posted by Ayacy at 2020/03/01 09:02:00
ご確認ありがとうございます。
以前までのWindowsならば、時間がたつにしたがってどんどん安定していったはずなのですが、今回のWindows 10は、Windows 10の中で新機能が開発・公開されていっている感じなので、不安定になったり安定したりを繰り返している感じで、利用者としてはなんだか不安になることが多い感じですね。



目次 | ←前へ / 2020-02-20 00:00 / 次へ→ / 最新へ⇒


目次の表示:


ブログではないので、コメント機能とトラックバック機能は提供していません。ご質問・ご意見等はメールフィードバックまたはTwitter等からお願いします。いただいたご質問・ご意見などは、この「管理人のひとこと」の記事に追加、あるいは新規の記事にする形で一部または全文をそのまま、あるいは加工させていただいた上で、ご紹介させていただく場合があります。
当サイトでは掲載内容による不具合等に関する責任を持ちません。また、内容の正確性についての保証もありませんので、情報をご利用の際は、利用者の自己責任で確認をお願いします。本ページは公開から1年半後の任意のタイミングで削除される予定です。




2554488 (+0188)[+0573]

Copyright© 2010-2021 INASOFT