
一部の「Windows 10」ユーザーの間では1年以上前から、「G」という名称の謎のアプリによってシャットダウンが妨げられるという問題に対する懸念の声が上がっていた。Microsoftが今回、この問題について説明した。 同社はユーザーからの報告について調査し、問題を特定し、「Windows 10 Insider Preview Build 19013(20H1)」で修正した。この問題は、「Windows」が使用しているグラフィックデバイスインターフェース(GDI+)における処理上のミスによって引き起こされていたという。 Windows Insider Programチームによると、「われわれは調査の結果、GDI+に関連するウィンドウが『G』と表示されるという問題を発見した。この問題を修正したことで、今後は『GDI+ Windows ()』という名前(の部分はGDI+を使用しているアプリの実行ファイル名)が表示されるようになる」という。
また、Windowsの開発に20年以上にわたって携わっているRaymond Chen氏もさらに詳細な説明を提供した。
Chen氏によると、「G」がWindows上で表示されるのは、UnicodeのテキストをANSIで解釈してしまうというバグによって、多くの場合にアプリ名の最初の1文字目だけが表示されることになるためだという。
Chen氏は「Unicodeで記述されたメッセージを『DefWindowProcA』に引き渡した場合、最初の文字以降にある多くの文字列が切り捨てられることになる」と説明した。
GDI+ライブラリーの開発当初は、Unicodeに完全対応していなかった「Windows 98」をサポートするために、ANSIコンポーネントとしてコンパイルを行っていた。その後Windows 98のサポート終了に伴い、GDI+チームはGDI+をANSIベースのコンポーネントではなく、Unicodeベースのコンポーネントとして再コンパイルしたのだという。
Chen氏は「通知ウィンドウのプロシージャー以外は、DefWindowProcAに対する明示的な呼び出しが行われていた。このため文字セットにおける未対応文字の大半は、コンパイラーによって型の不整合が捕捉されていた。しかし、DefWindowProcにおける文字セットへの依存については、パラメーター型で考慮されていなかった。
その結果、メッセージの受け取り方は暗黙の変換に任され、それによって引き起こされる不整合はコンパイラによって捕捉されなかった」と続けた。
「通知ウィンドウはテキスト処理をいっさい行わないため、この不整合はテスト段階でも検出されなかった。『GDI+ Hook Window』というウィンドウのタイトルは単なる『G』になったものの、タイトル自体はどこにも使われていないため、この間違いは他に悪影響を及ぼさなかった。
このウィンドウタイトルがユーザーの目に触れることはない。ただし、例外がある」(Chen氏)
「あるプログラムがサインアウトまたはシャットダウンを妨げた場合、Windowsはそのプログラムに属している目に見えるウィンドウを探し出し、『Blocked Shutdown Resolver』(BSDR)画面に表示しようとする。
しかし、そのプログラムが目に見えるウィンドウを保持していない場合、BSDRは可視/不可視に関係なく該当プログラムに属している任意のウィンドウを選択する。このため、『G』という名称の目に見えないウィンドウが選択される場合も出てくる」(Chen氏)
>UnicodeのテキストをANSIで解釈してしまうというバグによって、多くの場合にアプリ名の最初の1文字目だけが表示されることになるためだという。
これくらいはよ直せよ
俺もそう思った。
原因が分かってるのなら直せばいいやん
>>362
> 原因が分かってるのなら直せばいいやん
↓
同社はユーザーからの報告について調査し、問題を特定し、「Windows 10 Insider Preview Build 19013(20H1)」で修正した。
難しくて理解できないよ
だれか、3行いないで説明してよ
GOKIBURI嫌だね
ほんとそう
新しいハードウェアや規格に対応してくれれば後の機能はWindows95と同等でかまわないし、ちゃんとお金を出して購入するのに
今のWindows10は無料でも使いたくない
来年以降、サポートが切れてもWindows7を使い続けるわ
正気かよw
もっとさぁシンプルでいいんだよ
開いているアプリがどうたらとか出ててシャットダウンされていなかったあれの事か?
それはアプリが正常終了してないときじゃないか?
「G」はダイアログは出ないで勝手に終了する
せっかく綺麗な画像提供してくれてるんだからちゃんと見せてよ
マジでこういうのやめて欲しい
スリープしたと思ったらすぐに復帰する
WOLやデバイス復帰は切ってるからどこが悪さしてるかわからん
でるけどそれのこと?
本来「GDI+ Windows (アプリ名)」と表示されるべき場所が
1文字目で切れてしまい「G」になるバグが今更見つかった
(Windows9x互換を切り捨てたときの修正漏れ)
シャットダウンが妨害される原因そのものは解決してないな
原因がどのアプリかちゃんと名前が出るようになるだけ
バカでもわかるように3行にまとめた
Windows98に配慮してやった事がWindows10で不具合を起こしちゃったよ!
やっぱ古いWindowsってクソだね。7や8を使ってるそこの君!今すぐ10に乗り換えようぜ!
最新のWindows10ならこの不具合は修正済みさ!(まだ公開してないけどな)
あんなん情報拡散する原因になんだろうが
出典:https://asahi.5ch.net/test/read.cgi/newsplus/1574647994/