_AfxDispatchCmdMsg

_AfxDispatchCmdMsgは、非公開関数だが、一応中身見ていく。

#pragma twice 119 Version 6.19 デバッグウィンドウがいっぱい

前回、ここまで来たので、ステップイン。
前回、ここまで来たので、ステップイン。

前回、ここまで来たので、ステップイン。

中はこうなっている
中はこうなっている

中はこうなっている。

渡された関数ポインタがCWinApp::OnFileNew
渡された関数ポインタがCWinApp::OnFileNew

渡された関数ポインタがCWinApp::OnFileNew。

次はここに来る
次はここに来る

次はここに来る。

さて、ここからどこに飛ぶか。
さて、ここからどこに飛ぶか。

さて、ここからどこに飛ぶか。

ここでした。
ここでした。

ここでした。
ステップインすると、

CWinApp::OnFileNewに飛ぶ
CWinApp::OnFileNewに飛ぶ

CWinApp::OnFileNewに飛ぶ。

進むと、m_pDocManagerのOnFileNewを呼ぶ。
進むと、m_pDocManagerのOnFileNewを呼ぶ。

進むと、m_pDocManagerのOnFileNewを呼ぶ。
さかのぼると、_AfxDispatchCmdMsgの前に、

AfxFindMessageEntryの戻り値のlpEntryのpfnがCWinApp::OnFileNewだった。
AfxFindMessageEntryの戻り値のlpEntryのpfnがCWinApp::OnFileNewだった。

AfxFindMessageEntryの戻り値のlpEntryのpfnがCWinApp::OnFileNewだった。

Sample/mfc/_AfxDispatchCmdMsg/_AfxDispatchCmdMsg/src/_AfxDispatchCmdMsg at master · bg1bgst333/Sample · GitHub