フレームワーク アプリケーションの大部分の時間は、CWinApp クラスのメンバー関数 Run で費やされます。 初期化後、WinMain は Run を呼び出して、メッセージ ループを処理します。
Run はメッセージ ループを使用して、メッセージ キューに有効なメッセージがあるかどうかを周期的にチェックします。 メッセージがあると、Run はメッセージをディスパッチします。 メッセージがないとき (ほとんどの場合)、Run は OnIdle を呼び出して、プログラマまたはフレームワークに必要なアイドル時の処理を実行します。 メッセージがなく、アイドル時の処理がないとき、アプリケーションは何かが発生するまで待ちます。 アプリケーションが終了するとき、Run は ExitInstance を呼び出します。 OnIdle メンバー関数に関するトピック内の図に、メッセージ ループにおける動作シーケンスを示します。
メッセージのディスパッチは、メッセージの種類に依存します。 詳細については、「フレームワークのメッセージとコマンド」を参照してください。