IMEのバージョンによっては日本語入力で落ちる?

  1. Windows 11 Insider Preview [22H2 OS ビルド 22598.200]だと日本語IMEを起動した瞬間に落ちるようです。
    ・設定などで回避できるか
    ・ビルド 22610.1に上げると回避できるか

    の2点については追って確認したいと思います。

    Insider設定をベータ未満のDevチャンネルに設定しているので知ったこっちゃないと思いますが、ご参考までに。

    なお、IMEの設定において、
    「以前のバージョンのMicrosoft IMEを使う」の設定をONにしたところ、
    落ちなくはなりました。

     |  tak  |  返信
  2. すみません。少し前に見解と方針が書かれてましたね。削除はできないみたいなんで、無視してください。

     |  tak  |  返信
  3. ご報告ありがとうございます。

    私のほうでも確認してみたいのですが、Windows 11 に対応したパソコンを持っていないため、Insider Preview のアップデートが適用できず、22598.200 の環境は用意できませんでした。

    (古い PC に無理やりインストールした Insider Preview だとアップデートを受けられない模様)

    なので、22598.1 と 22610.1 を ISO からクリーンインストールした環境を作って Mery 3.3.6 (64 ビット版) で確認してみたのですが、いずれも IME での問題は再現されませんでした。

    22598.200 固有の問題か、環境に依存する問題かもしれません。

    また、Mery Ver 3.2.3 で新しい IME 向けに修正を行っているので、Mery のバージョンが古い場合は更新してみてください。

    あとは [オプション] の [基本] カテゴリにある [変換中の文字を挿入モードで入力] を切り替えて現象がどうなるかご確認いただければと思います。

    > すみません。少し前に見解と方針が書かれてましたね。削除はできないみたいなんで、無視してください。

    そうですね。Mery の不具合であれば対策もできるのですが、新しい IME の不具合の場合は Microsoft の対応待ちということになる可能性が高いので、ご了承いただければと思います。

     |  Kuro  |  返信
  4. 申し訳ありません。やはりWindowsのInsider Preview版の不具合だったようです。
    以下のとおり、直近のWindows側の更新で解決しました。

    Windowsのバージョン
     ×Windows 11 Insider Preview [22H2 OS ビルド 22598.200]
     ×Windows 11 Insider Preview [22H2 OS ビルド 22610.1]
     〇Windows 11 Insider Preview [22H2 OS ビルド 25120.1010]

    特定バージョンの.net frame libraryとかMFCとか、そのあたりをやらかしていたのかもしれません。

    ---------------------------------------------------------------------
    以下はもう発生しませんが、発生していたときの状況です。
    ---------------------------------------------------------------------

    状況
    落ちていた箇所
     ・Meryのエディタ部
     ・テーマ保存の名前入力欄
     ・ファイル名選択のコモンダイアログ
     ・設定ダイアログのテーマ名の入力箇所

    落ちていた落ち方
     ・半角/全角キーを押した直後にフリーズ。(エディタ内でもダイアログでも)
     ・その1~2秒後にアプリごと完全に落ちる。

    試したMeryのバージョン
     ・3.36(64bit), 3.28(64bit), 3.04(64bit, 32bit)
    -------------------------------------------------------------------------------------

    すでに発生していませんので、何も問題ありません。
    お騒がせして申し訳ありません。

     |  tak  |  返信
  5. ご報告ありがとうございます。

    ビルド 22610.1 は私の環境ですと問題なかったものですから、×なのは気になるところではありますが、とりあえず解決したとのことで安心しました。

    落ちる箇所が Mery 内部ならまだわかるのですが、コモンダイアログで落ちるとなると Mery 以外のアプリにも影響がありそうな気がしますがいかがでしょうか。

    またお気づきの点などございましたら情報をいただけると助かります。

     |  Kuro  |  返信
  6. > 落ちる箇所が Mery 内部ならまだわかるのですが、コモンダイアログで落ちるとなると Mery 以外のアプリにも影響がありそうな気がしますがいかがでしょうか。
    >
    > またお気づきの点などございましたら情報をいただけると助かります。

    お騒がせしてすみませんでした。
    sakura editor、メモ帳、Office、Chromeなど他のアプリでは、発生していませんでした。
    Microsoft IMEって、.Net Framework の4.7とか4.8とかを使っていますよね。
    このあたりを再配布とかしようとして、古いバージョンの依存関係を一時的にぶち壊したり、バグがあるバージョンを撒いたのかな?と勝手に予想しています。

    とりあえず治ったので、あまり調べようと思いませんが、
    お騒がせしてすみません。

     |  tak  |  返信
  7. いえいえ、情報ありがとうございます。

    > Microsoft IMEって、.Net Framework の4.7とか4.8とかを使っていますよね。
    > このあたりを再配布とかしようとして、古いバージョンの依存関係を一時的にぶち壊したり、バグがあるバージョンを撒いたのかな?と勝手に予想しています。

    なるほど、その可能性はありますね。それにしても Mery だけが影響を受けてしまうのは悲しいところですが…。

    私のほうでも調べたところ、Mery の開発環境である Delphi の開発元 (エンバカデロ) も問題を認識しているようで、新しい IME の影響についての情報を掲載していました。

    以下、エンバカデロの情報からの引用です。
    ---
    VCLコントロールは、Windows標準コントロールのラッパークラスであるため、その挙動は実行しているWindowsバージョンに依存いたします。IMEの挙動も同様に選択しているIMEの種類(例えば、MS IMEなど)の動作に依存いたします。

    エンバカデロでは、今後もIMEに影響する動作に関しては、VCL側で特定のバージョンに合わせて独自の対処コードを埋め込む方針ではなく、基本的にWindows OSおよびIMEの修正によって対処すべきと判断しております。
    ---
    【出典】https://docwiki.embarcadero.com/Support/ja/Windows_10(20H2)%E4%BB%A5%E9%99%8D%E3%81%AE%E7%92%B0%E5%A2%83%E3%81%A7%E3%80%81VCL%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%92%E5%AE%9F%E8%A1%8C%E3%81%97%E3%81%9F%E6%99%82%E3%81%AEIME%E3%81%AE%E6%8C%99%E5%8B%95

    Mery は上記の「VCL コントロール」というのを使っているのですが、エンバカデロとしては、IME の問題は Microsoft 側で対処してくれという考えのようなので Mery 側としても様子見というかたちになりそうです。

     |  Kuro  |  返信
  8. 念のための動作報告です。

    Windows 11 22H2のRTMとされる 22621.1のビルド版のISOイメージでクリーンインストールした状態で、日本語IMEに切り替えた際にMeryがクラッシュする問題が再現しました。
    takさんが確認されている通り「以前のバージョンのMicrosoft IMEを使う」の設定をONにした場合はクラッシュしなくなります。

    確認を行ったMeryのバージョンはv3.3.6です。
    「変換中の文字を挿入モードで入力」の設定に関係なくクラッシュするようです。

    Insider PreviewとはいえRTM想定のバージョンでも起きるのでご連絡まで。

     |  ひつじのひと  |  返信
  9. ご報告ありがとうございます。

    私のほうでも Windows 11 22H2 22621.1 の ISO イメージでクリーンインストールして確認してみましたが問題は再現しませんでした。

    # 検証環境
    ---
    エディション Windows 11 Pro
    バージョン 22H2
    インストール日 ‎2022/‎06/‎13
    OS ビルド 22621.1
    エクスペリエンス Windows Feature Experience Pack 1000.22632.1000.0

    Mery Ver 3.3.6 (64 ビット、32 ビット ポータブル版)
    ---

    Windows 11 をクリーンインストールして、念のため Windows Update で最新の状態にしました。Windows の設定は変更せず、他のアプリも (スクリーンキャプチャソフト以外は) インストールしていない環境です。

    Mery はポータブル版を初期設定のまま使用し、マクロやプラグイン (アウトラインプラグイン以外) は導入していません。

    # 参考画像 (GIF 動画)
    https://imgur.com/a/ASP6GpS

    エディター部分で「半角/全角」キーを押すと正常に切り替えられています。(右下のタスクトレイで確認できます) コモンダイアログでも問題ありませんでした。

    もしかすると他に発生条件があるか、環境に依存する問題なのかもしれません。

    例えば…

    ・Mery はポータブル版?
    → インストーラー版で Program Files 配下にインストールされてるとセキュリティ的な問題でウイルスチェックソフトに弾かれちゃったりする、など。

    ・Mery の設定を変更されてますか?
    → Mery の特定の設定、またはその組み合わせで問題が発生する、など。

    ・他にインストールされたアプリはありますか?
    → 常駐アプリなどとの競合の可能性。

    ・Windows 標準以外のウイルスチェックソフトをインストールされていますか?
    → 野良アプリなのでウイルスチェックソフトに妨害されてる可能性。

    ・Windows 11 は Pro で確認しましたが、Home だったりしますか?
    → Pro と Home で仕様が違うというのは考えづらいですが…

    ・ISO の違い?
    → ISO は「Windows 11 Insider Preview (Release Preview Channel) - Build 22621」を使用しましたが合ってますか?

    「Windows 11 Insider Preview (Beta Channel) - Build 22621」というのもありましたがこちらは検証していません。

    # ISO のダウンロードサイト
    https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewiso

    ・環境依存?
    → CPU やグラボ、マザボなどとの相性は考えづらいですが…。4K ディスプレイで高 DPI だったり、マルチディスプレイでメインとサブの DPI が異なる環境だったりすると関係あるかもしれません。

    と、思いついたことを箇条書きにしてみましたが、このあたりで何か心当たりがありましたらご協力いただけると助かります。

     |  Kuro  |  返信
  10. 非常に不思議ですね・・・。

    こちらの環境は
    Windows 11 Pro 22621.1 64bit
    Mery ver3.3.6インストーラー版
    だったのですが、今ポータブル版をダウンロードして(設定を何もいじらず)実行したところやはり新IMEだとクラッシュしました。

    常駐アプリを終了させましたが変わらず。
    ウイルスチェックソフトはDefenderを利用しています。
    ISOはRelease Preview Channelであっております。

    マシン情報としてDxDiagの情報を載せます。
    Operating System: Windows 11 Pro 64-bit (10.0, Build 22621) (22621.ni_release.220506-1250)
    Language: Japanese (Regional Setting: Japanese)
    System Manufacturer: ASUS
    System Model: System Product Name
    BIOS: 2423 (type: UEFI)
    Processor: AMD Ryzen 5 5600X 6-Core Processor (12 CPUs), ~3.7GHz
    Memory: 65536MB RAM
    Available OS Memory: 65450MB RAM
    Page File: 38791MB used, 36386MB available
    Windows Dir: C:\Windows
    DirectX Version: DirectX 12
    DX Setup Parameters: Not found
    User DPI Setting: 96 DPI (100 percent)
    System DPI Setting: 144 DPI (150 percent)
    DWM DPI Scaling: Disabled
    Miracast: Available, no HDCP
    Microsoft Graphics Hybrid: Not Supported
    DirectX Database Version: 1.3.7
    DxDiag Version: 10.00.22621.0001 64bit Unicode
    ---------------
    Display Devices
    ---------------
    Card name: NVIDIA GeForce GTX 1660

    4KモニタでなくフルHDのモニターでも試しましたが同じですね。。。

     |  ひつじのひと  |  返信
  11. > ご報告ありがとうございます。
    >
    > 私のほうでも Windows 11 22H2 22621.1 の ISO イメージでクリーンインストールして確認してみましたが問題は再現しませんでした。

    どちらにせよ、OSかDelphi側での解決を待つか、設定で逃げるかになりそうですね。

    kuroさん
    以下設定のオンとオフを繰り返した場合はどうでしょう?
    私は一旦、落ちなくなったように見えましたが、何度がオフ・オンをしていたせいなのか、また発生するようになりました。

    https://support.microsoft.com/ja-jp/windows/%E4%BB%A5%E5%89%8D%E3%81%AE%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%E3%81%AE-ime-%E5%85%A5%E5%8A%9B%E6%96%B9%E5%BC%8F%E3%82%A8%E3%83%87%E3%82%A3%E3%82%BF%E3%83%BC-%E3%81%AB%E6%88%BB%E3%81%99-adcc9caa-17cb-44d8-b46e-f5b473b4dd77#:~:text=%5B%E8%A8%AD%E5%AE%9A%5D%20%E5%86%85%E3%81%AE%E6%A4%9C%E7%B4%A2%E3%83%9C%E3%83%83%E3%82%AF%E3%82%B9,%E4%BD%BF%E3%81%86%5D%20%E3%82%92%E3%82%AA%E3%83%B3%E3%81%AB%E3%81%97%E3%81%BE%E3%81%99%E3%80%82

     |  tak  |  返信
  12. >> ひつじのひと さん、tak さん

    情報ありがとうございます。ほんと、不思議です…。

    > 以下設定のオンとオフを繰り返した場合はどうでしょう?

    オン・オフを何度も切り替えて試してみたのですが問題は再現しませんでした。

    User DPI Setting と System DPI Setting が気になったので、いただいたマシン情報の設定に合わせて検証してみたのですが、これも問題なし。

    私の検証環境も貼っておきます。

    【検証環境 1】

             Operating System: Windows 11 Pro 64-bit (10.0, Build 22621) (22621.ni_release.220506-1250)
                     Language: Japanese (Regional Setting: Japanese)
          System Manufacturer: Gigabyte Technology Co., Ltd.
                 System Model: G31M-ES2L
                         BIOS: Award Modular BIOS v6.00PG (type: BIOS)
                    Processor: Intel(R) Core(TM)2 Quad CPU    Q8400  @ 2.66GHz (4 CPUs), ~2.7GHz
                       Memory: 4096MB RAM
          Available OS Memory: 4094MB RAM
                    Page File: 2037MB used, 3465MB available
                  Windows Dir: C:\Windows
              DirectX Version: DirectX 12
          DX Setup Parameters: Not found
             User DPI Setting: 96 DPI (100 percent)
           System DPI Setting: 144 DPI (150 percent)
              DWM DPI Scaling: UnKnown
                     Miracast: Not Available
    Microsoft Graphics Hybrid: Not Supported
     DirectX Database Version: 1.3.7
               DxDiag Version: 10.00.22621.0001 64bit Unicode
    
    ---------------
    Display Devices
    ---------------
               Card name: NVIDIA GeForce 8400 GS    

    あとは、AMD 系の CPU と Windows 11 の組み合わせかとも思い、Ryzen は持っていませんが AMD 系の PC でも検証してみました。

    【検証環境 2】

             Operating System: Windows 11 Pro 64-bit (10.0, Build 22621) (22621.ni_release.220506-1250)
                     Language: Japanese (Regional Setting: Japanese)
          System Manufacturer: LENOVO
                 System Model: 10107
                         BIOS: LENOVO BIOS Rev: EUKT24A 0.0 (type: BIOS)
                    Processor: 利用不可
                       Memory: 2048MB RAM
          Available OS Memory: 1610MB RAM
                    Page File: 1737MB used, 1271MB available
                  Windows Dir: C:\Windows
              DirectX Version: DirectX 12
          DX Setup Parameters: Not found
             User DPI Setting: 96 DPI (100 percent)
           System DPI Setting: 96 DPI (100 percent)
              DWM DPI Scaling: Disabled
                     Miracast: Not Available
    Microsoft Graphics Hybrid: Not Supported
     DirectX Database Version: 1.3.5
               DxDiag Version: 10.00.22621.0001 64bit Unicode
    
    ---------------
    Display Devices
    ---------------
               Card name: AMD Radeon HD 7340 Graphics

    CPU は AMD E-450 ですが、問題は再現せず。

    Windows 11 非対応の低スペックな PC に TPM 2.0 チェックをオフにして無理やりインストールしているので、そのあたりが関係している可能性…?

    > どちらにせよ、OSかDelphi側での解決を待つか、設定で逃げるかになりそうですね。

    そうですね。対応できるかどうか、するかどうかは置いといて、プログラムのどの部分で落ちているのかは非常に気になるところではあります。

     |  Kuro  |  返信
  13. Windows 11 Insider Preview 25158.1000 (rs_prerelease)
    を入れたらもしかしたら治ったかもしれない。

    それまでは更新でいったん収まっても、再起動やスリープ後に再発生していたんですが。

    ちょっと様子見してみます。

     |  tak  |  返信
  14. 検証のご協力ありがとうございます。

    もう新しいものがでていたのですね。25158.1000 は ISO も配布されているようなので、私の環境でもインストールできたら検証してみたいと思います。

     |  Kuro  |  返信
  15. 25158.1000 ではないのですが、私の環境でも問題が再現されました。

    アップデートには対応していないはずの低スペック PC ですが、なぜか Windows 11 のアップデートを受信できたようで、いつの間にか Windows 11 Pro 22H2 22621.105 になっており、半角/全角キーでクラッシュするようになっていました。

    その後、手動でもアップデートできまして 22621.232 でもクラッシュしました。

    デバッガーを仕掛けて確認してみたところ、textinputframework.dll の内部でクラッシュしているようですが、textinputframework.dll の内部で何が起きているのかまでは追えないもので原因は不明です。

    :736da449 ; C:\Windows\SysWOW64\textinputframework.dll

    そこで、Mery の開発環境の Delphi XE2 を使ってウィンドウ (TForm) とテキスト項目 (TEdit) だけの単純なプログラムで確認してみたところクラッシュしました。

    また、現在最新の Delphi 10.4.2 (実際は Delphi 11 が最新ですがこれは有料なので…) でも同じく単純なプログラムで確認してみたところクラッシュしました。

    Delphi 10.4.2 の場合、使用するフレームワークが VCL の場合はクラッシュしますが、FMX の場合はクラッシュしませんでした。(Delphi XE2 だとどちらでもクラッシュします)

    というわけで、クラッシュの原因は Delphi の VCL フレームワークにありそうです。他の Delphi 製アプリもいくつか試してみましたがクラッシュしました。

    この場合、Mery 側での対応は難しいです。

    しかしながら現在でも Delphi 製のアプリケーションはたくさんありますし、それらが軒並み使えなくなるというのは考えづらいので、Microsoft か Delphi の開発元から何らかの対応があるのではないかと思います。

    どちらも対応してくれない場合は Mery 終了ですが…。

    さすがに十数万円もする開発環境の Delphi ですから、クラッシュしますが仕様です。と放置することはないと思うので、もう少し我慢して様子を見てみたいと思います。

     |  Kuro  |  返信
  16. > 25158.1000 ではないのですが、私の環境でも問題が再現されました。

    上記バージョンでは落ちないものの、ちょっと気になったことがありました。

    「あああああ」といきなり打って改行を繰り返してみました。

    すると変換用の候補文字列(デフォルトは水色?)が、表示される場合と
    (改行まで行っても)処理遅延で表示されないことがありました。(プチフリ的な)

    新IMEはかなり重たいのですが、この辺の遅延というかデッドロック的な
    タイムアウトになったときの動作が、25158.1000 より前は下手なのでは・・

    それ以前のバージョンでは、アップデート直後は大丈夫で、少しすると
    発生したときがありましたが、これも処理の遅延というかタイミングと
    関係がありそうな動きに見えます。

    そう考えるとコンポーネントかOSで頑張ってくれないと厳しい気がします。
    APIのみでゼロかウィンドウを作るとか、UWP的なものだけは、
    テストや調整の優先度が高そうですが。

     |  tak  |  返信
  17. ご返信ありがとうございます。

    > 変換用の候補文字列(デフォルトは水色?)が、表示される場合と(改行まで行っても)処理遅延で表示されないことがありました。(プチフリ的な)

    私の環境でも再現しました。これはメモ帳とかでも同様、変換窓がなかなか表示されなかったりするようですね。

    > APIのみでゼロかウィンドウを作るとか、UWP的なものだけは、テストや調整の優先度が高そうですが。

    試しに Mery の UWP 版 (ストアにて MS 承認済み) で検証してみましたがダメでした…

    引き続き調査しておりましたところ、上記の変換窓の表示がもたもたする現象はどうにもならないものの、ついにクラッシュを回避する方法を見つけました。

    まだ十分な検証はできていませんが、うまく行けば次のバージョンで対策できるかもしれないので今しばらくお待ちくださいませ。

     |  Kuro  |  返信
  18. Windows 11 Insider Preview でのクラッシュ対策を施した Ver 3.3.8 をリリースしました。

    以前のバージョンでも 25158.1000 だと今のところ問題は発生してなさそうですが、今後、また問題が再発するようであれば Ver 3.3.8 で現象が改善されるかどうかお試しくださいませ。

     |  Kuro  |  返信
  19. > Windows 11 Insider Preview でのクラッシュ対策を施した Ver 3.3.8 をリリースしました。
    >
    > 以前のバージョンでも 25158.1000 だと今のところ問題は発生してなさそうですが、今後、また問題が再発するようであれば Ver 3.3.8 で現象が改善されるかどうかお試しくださいませ。

    Windows 11 22621.232で動作確認を行い、3.3.8で新IMEでもクラッシュせず動作することを確認できました!
    (22621.232では3.3.7だと新IMEでクラッシュする状態であることを確認済)

     |  ひつじのひと  |  返信
  20. ご報告ありがとうございます。

    > Windows 11 22621.232で動作確認を行い、3.3.8で新IMEでもクラッシュせず動作することを確認できました!

    おぉぉぉ!それを聞いてとても安心しました。

    根本的な原因は Windows 11 の IME のバグだと思いますが、最初にご報告をいただいてから 2 か月になりますね。長かった…。

    みなさん、本当にご協力ありがとうございました。

    …でも、他のかたの環境だと直ってなかったりすると凹みますねぇ。

     |  Kuro  |  返信
スポンサーリンク