Função WinMain (winbase.h)
O ponto de entrada fornecido pelo usuário para um aplicativo gráfico baseado no Windows.
WinMain é o nome convencional usado para o ponto de entrada do aplicativo. Para obter mais informações, consulte Comentários.
Sintaxe
int __clrcall WinMain(
[in] HINSTANCE hInstance,
[in, optional] HINSTANCE hPrevInstance,
[in] LPSTR lpCmdLine,
[in] int nShowCmd
);
Parâmetros
[in] hInstance
Tipo: HINSTANCE
Um identificador para a instância atual do aplicativo.
[in, optional] hPrevInstance
Tipo: HINSTANCE
Um identificador para a instância anterior do aplicativo. Esse parâmetro é sempre NULL. Se você precisar detectar se outra instância já existe, crie um mutex nomeado exclusivamente usando a função CreateMutex. CreateMutex terá êxito mesmo se o mutex já existir, mas a função retornará ERROR_ALREADY_EXISTS. Isso indica que existe outra instância do seu aplicativo, porque ele criou o mutex primeiro. No entanto, um usuário mal-intencionado pode criar esse mutex antes de você e impedir que seu aplicativo seja iniciado. Para evitar essa situação, crie um mutex nomeado aleatoriamente e armazene o nome para que ele só possa ser obtido por um usuário autorizado. Como alternativa, você pode usar um arquivo para essa finalidade. Para limitar seu aplicativo a uma instância por usuário, crie um arquivo bloqueado no diretório de perfil do usuário.
[in] lpCmdLine
Tipo: LPSTR
A linha de comando do aplicativo, excluindo o nome do programa. Para recuperar toda a linha de comando, use a função GetCommandLine.
[in] nShowCmd
Tipo: int
Controla como a janela deve ser mostrada. Esse parâmetro pode ser qualquer um dos valores que podem ser especificados no parâmetro
Valor de retorno
Tipo: int
Se a função for bem-sucedida, encerrando quando receber uma mensagem WM_QUIT, ela deverá retornar o valor de saída contido no parâmetro wParam da mensagem. Se a função terminar antes de inserir o loop de mensagem, ela deverá retornar zero.
Observações
O nome WinMain é usado por convenção por muitas estruturas de programação. Dependendo da estrutura de programação, a chamada para a função WinMain pode ser precedida e seguida por atividades adicionais específicas a essa estrutura.
O WinMain deve inicializar o aplicativo, exibir sua janela principal e inserir um loop de recuperação e expedição de mensagens que seja a estrutura de controle de nível superior para o restante da execução do aplicativo. Encerre o loop de mensagem quando receber uma mensagem WM_QUIT. Nesse ponto, seu
Os aplicativos ANSI podem usar o parâmetro
Exemplo
O exemplo de código a seguir demonstra o uso de WinMain
#include <windows.h>
int APIENTRY WinMain(HINSTANCE hInst, HINSTANCE hInstPrev, PSTR cmdline, int cmdshow)
{
return MessageBox(NULL, "hello, world", "caption", 0);
}
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 2000 Professional [somente aplicativos da área de trabalho] |
servidor com suporte mínimo | Windows 2000 Server [somente aplicativos da área de trabalho] |
da Plataforma de Destino |
Windows |
cabeçalho | winbase.h (inclua Windows.h) |
Consulte também
Conceitual
outros recursos
de referência de