現在MFC デスクトップアプリケーションを開発中です。
親のウィンドウのハンドラを継承したモードレスのダイアログが出ている状態で、[応答なし]となるような処理を実行した時に、ダイアログと親ウィンドウのZオーダーがたまに狂ってしまい、ダイアログがウィンドウの背面にいってしまう現象が発生しており、対処方法を模索中です。この現象についてあまり詳しい情報を見つけられていないのですが、Windowsのアプリケーションで発生する現象なのでしょうか?また、Windows側の問題の場合、適切な対称方法があれば教えて頂きたいです。対処方法としては下記があると思っているのですが、他に適切な対処方法があれば教えてください。1.Peekmessage()を飛ばしてOSにハングアウトとしたと認識させない2.DisableProcessWindowsGhosting API を呼び出してゴーストウィンドウを無効化する3.そもそも[応答なし]の状態にさせないようにメインスレッドで処理を実行しないように設計する※試した事として,重たい処理を実行後にstd::Sleep(0)関数を入れると現象が再現しなくなることを確認しております。なぜ発生しなくなるのかがハッキリとした理由が分からないためおまじないとして実装をしたくないと思っております。開発環境IDE:Visual Studio 2015プラットフォームツールセット :Visual Studio 2015 (v140)実行環境OS : Windows 10 Pro 64-bit (10.0, Build 19045)System Manufacturer: Dynabook Inc.Memory: 16384MB RAMProcessor: 11th Gen Intel(R) Core(TM) i5-1145G7 @ 2.60GHz (8 CPUs), ~2.6GHzGPU Card name: Intel(R) Iris(R) Xe Graphicsよろしくお願い致します。