ニュース
Delphi/C++Builder製アプリが日本語変換時にクラッシュ ~Windows 11 バージョン 22H2【21:00追記】
IMEの仕様変更の影響か、Embarcaderoが回避策を案内。「TeraPad」「Mery」などにも影響
2022年10月14日 12:38
「Windows 11 バージョン 22H2」では日本語入力システム(IME)にいくつかの機能変更が加えられており、その影響で「Delphi」「C++Builder」「RAD Studio」製のアプリがクラッシュする症状が報告されているという。米Embarcadero Technologiesがその具体的な内容と対策をサポートページで案内している。
同社によると、この問題は2002年リリースの「Delphi 7」から最新の「RAD Studio 11.2 Alexandria」までの、幅広いバージョンに影響する。問題が発生したアプリでは、デバッガーに以下のようなエラーメッセージが表示されることがある。
プロジェクト Project1.exe は例外クラス $C0000090 (メッセージ 'floating point invalid operation at 0x6de1a449')を送出しました。
プロジェクト Project1.exe は例外クラス $C0000090 (メッセージ 'c0000090 FLOAT_INVALID_OPERATION')を送出しました。
アプリがリリースモードの場合は上記の例外エラーは表示されず、アプリが日本語入力時にクラッシュし、強制終了してしまう。
ただし、影響を受けるのは「VCL」で開発されたアプリのみ。「FMX」で開発されたアプリでは問題は発生しない。
同社は、Microsoftがこの問題を修正すべきとしつつも、当面の対策として以前のバージョンの「Microsoft IME」に戻すか、[オプションの診断データを送信する]オプションを無効化する方法を案内している。
[2022年10月14日17時45分編集部追記] 本問題はテキストエディター「TeraPad」や「Mery」にも影響している模様。Microsoftの対応が待たれる。
[2022年10月14日21時00分編集部追記] 本問題はクリップボード履歴ツール「Clibor」にも影響する模様。日本での影響は大きいようだ。
Windows11 22H2 にて「半角/全角」ボタン押下でTeraPadが落ちる件。『以前のバージョンの Microsoft IME を使う』オンで暫定的に回避できました。引き続き恒久対策を調査します。
— TeraPad (@terapad)October 7, 2022
Win11 22H2と新しいIMEとDelphiの組み合わせで発生する問題について、今まで調べたことを簡単にまとめてみました。https://t.co/RLFYCfdq4h#Mery#Delphi#22H2
— Kuro (@haijinboys)September 30, 2022
Windows11 22H2のクラッシュする問題について、Cliborでも発生することを確認しました。
— 千草 (Clibor作者) (@chigusaweb)October 14, 2022
(Delphi製アプリのため)
Cliborの場合、エラーメッセージが表示されず、アプリが落ちます。
対応策につきましては、窓の杜さんの記事をご覧ください。
その対応で発生しなくなることを確認しました。https://t.co/mBBy2HPjOd