- ベストアンサー
スケルトンの中のどこでウィンドウが生成されているのか?
VC++、MFCです。 MFC AppWizardでSDIベースのスケルトンを生成した時点で、既にウィンドウが作られるコードがソース内に存在するはずなのですが、単純にCreate関数を探しても見当たりません。 一体どこでウィンドウが作るコードはどこにあるのでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
スケルトンで作成されるコードで言うと、 CWinApp::InitInstance の中の if (!ProcessShellCommand(cmdInfo)) の中です。 実際には、ここで呼ばれるフレームワーク中でCreateExが呼ばれてたはずです。興味があるのでしたらProcessShellCommandにブレイクポイントをはって、ステップ実行してソースを追ってみてください。 >思いますが、そのコンストラクタでCreateされていると思います。 MFCのフレームワーク中でコンストラクタ内でウィンドウを作成することはありません。
その他の回答 (1)
- sha-girl
- ベストアンサー率52% (430/816)
回答No.1
SDIの場合CWinAppを継承したクラスがあると 思いますが、そのコンストラクタでCreateされていると思います。 CWinApp自体のコードはプロジェクトにはないわけで Create関数を探しても見つからないのだと思います。
質問者
お礼
ありがとうございます。 調べてみたいと思います。
お礼
どうもありがとうございます。 実際にProcessShellCommandのソースを追うとCreateExに行き当たりました。 ようやくスッキリしました。