IVideoWindow::put_Visible() が呼び出されるたびに、メッセージ キューからメッセージを取り出してディスパッチします。それは呼び出しシーケンスを完全に台無しにします。
ケースバイケースのバイアスで、これによって引き起こされたいくつかのクラッシュを修正しました。つまり、put_Visible() を呼び出す前にフラグを設定し、フラグを消去します。そして、イベント ハンドラーでは、最初にフラグを確認し、フラグが設定されている場合は、イベントをメッセージ キューに戻し、イベント ハンドラーを終了します (つまり、put_Visible() が戻るまで処理を延期します。問題は、コード ベースが大きすぎることです)。そしてその方法は持続しません。
put_Visible() の動作を単純に変更して、メッセージ キューとディスパッチを混乱させないようにする方法はありますか?