MFC アプリケーションを Win32 アプリケーションに移植しています。取得する必要があります。
AfxGetThreadState()->m_lastSentMsg
Win32 での値。
MFC アプリケーションを Win32 アプリケーションに移植しています。取得する必要があります。
AfxGetThreadState()->m_lastSentMsg
Win32 での値。
MFC が行っていることは、最後に受信したメッセージがクラスでどのようなものであったかを記録することだけです。このようなものをスレッドメッセージポンプに追加できると確信しています...
編集:スレッドローカルストレージで「グローバル」を定義するために __declspec( thread ) を調べる価値もあります。これがMFCが行うことです...
編集:メッセージポンプがあります。次のような変数を最初に宣言するとします。
__declspec( thread ) MSG g_LastMsg = 0;
次に、各スレッドのメッセージ ポンプを次のように変更する必要があります。
MSG msg;
while( GetMessage( &msg, NULL, 0, 0 ) )
{
g_LastMsg = msg;
TranslateMessage( &msg );
DispatchMessage( &msg );
}
最後に「ポンプされた」メッセージが何であるかを知りたいときはいつでも、 g_LastMsg 変数をチェックしてください...
必要に応じて、ウィンドウ プロシージャ内からメッセージ構造体を作成することもできます。完全にあなた次第...