Compartilhar via


CWinApp: a classe do aplicativo

A classe de aplicativo principal no MFC encapsula a inicialização, a execução e o encerramento de um aplicativo para o sistema operacional Windows. Um aplicativo criado na estrutura precisa ter um, e apenas um objeto de uma classe derivada de CWinApp. Esse objeto é construído antes da criação das janelas.

CWinApp é derivado de CWinThread, que representa o thread principal de execução do aplicativo, que pode ter um ou mais threads. Em versões recentes do MFC, as funções membro InitInstance, Run, ExitInstance e OnIdle estão na classe CWinThread. Essas funções são discutidas aqui como se fossem membros de CWinApp, pois a discussão diz respeito à função do objeto como um objeto de aplicativo, e não como thread primário.

Observação

A classe do aplicativo constitui o thread de execução primário do aplicativo. Usando funções da API do Win32, você também pode criar threads de execução secundários. Esses threads podem usar a Biblioteca MFC. Para mais informações, confira Multithreading.

Como qualquer programa para o sistema operacional Windows, seu aplicativo de estrutura tem uma função WinMain. Em um aplicativo de estrutura, no entanto, você não escreve WinMain. Ele é fornecido pela biblioteca de classes e é chamado quando o aplicativo é inicializado. WinMain executa serviços padrão, como registrar classes de janela. Em seguida, ele chama as funções membro do objeto do aplicativo para inicializar e executar o aplicativo. (Você pode personalizar WinMain substituindo as funções membro CWinApp que WinMain chama.)

Para inicializar o aplicativo, WinMain chama as funções membro InitApplication e InitInstance do objeto do aplicativo. Para executar o loop de mensagens do aplicativo, WinMain chama a função membro Run. No encerramento, WinMain chama a função membro ExitInstance do objeto aplicativo.

Observação

Os nomes mostrados em negrito nesta documentação indicam elementos fornecidos pela biblioteca Microsoft Foundation Class e pelo visual C++. Os nomes mostrados no tipo monospaced indicam elementos que você cria ou substitui.

Confira também

Tópicos gerais do MFC
CWinApp e o Assistente de aplicativo MFC
Funções de membro CWinApp substituíveis
Serviços CWinApp especiais