CWinApp: The Application (Clase)

La clase de aplicación principal de MFC encapsula la inicialización, ejecución y finalización de una aplicación para el sistema operativo Windows. Una aplicación compilada en el marco debe tener uno y solo un objeto de una clase derivada de CWinApp. Este objeto se construye antes de crear ventanas.

CWinApp se deriva de CWinThread, que representa el subproceso principal de ejecución de la aplicación, que puede tener uno o varios subprocesos. En las versiones recientes de MFC, las funciones miembro InitInstance, Run, ExitInstance y OnIdle están realmente en la clase CWinThread. Estas funciones se describen aquí como si fueran miembros de CWinApp en su lugar, ya que la explicación se refiere al rol del objeto como objeto de aplicación en lugar de como subproceso principal.

Nota:

La clase de aplicación constituye el subproceso principal de ejecución de la aplicación. Con las funciones de la API Win32, también puede crear subprocesos secundarios de ejecución. Estos subprocesos pueden usar la biblioteca MFC. Para más información, vea Multithreading.

Al igual que cualquier programa para el sistema operativo Windows, la aplicación de marco tiene una función WinMain. Sin embargo, en una aplicación de marco, no se escribe WinMain. Se proporciona mediante la biblioteca de clases y se llama cuando se inicia la aplicación. WinMain realiza servicios estándar, como el registro de clases de ventana. A continuación, llama a funciones miembro del objeto de aplicación para inicializar y ejecutar la aplicación. (Puede personalizar WinMain invalidando las funciones miembro CWinApp que WinMain llama).

Para inicializar la aplicación, WinMain llama a las funciones miembro InitApplication y InitInstance del objeto de aplicación. Para ejecutar el bucle de mensajes de la aplicación, WinMain llama a la función miembro Run. Al finalizar, WinMain llama a la función miembro ExitInstance del objeto de aplicación.

Nota:

Los nombres que se muestran en negrita en esta documentación indican los elementos proporcionados por la biblioteca MFC (Microsoft Foundation Class) y Visual C++. Los nombres que se muestran en el tipo monospaced indican los elementos que se crean o invalidan.

Consulte también

Temas generales de MFC
CWinApp y el Asistente para aplicaciones MFC
Funciones miembro de CWinApp que se pueden sobrecargar
Servicios especiales de CWinApp