AfxWinInit

BOOL AFXAPI AfxWinInit (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow )

Parâmetros

hInstance

O identificador do módulo em execução.

hPrevInstance

Um identificador para uma instância anterior do application.nbsp; Para um aplicativo baseado em Win32, este parâmetro é sempre &NULL.

lpCmdLine

Aponta para uma seqüência de caracteres null-terminated especificando a linha de comando para o aplicativo.

nCmdShow

Especifica como a janela principal de um aplicativo GUI seria mostrada.

Observações

Esta função é chamada pela função fornecido MFC WinMain , como parte da inicialização CWinApp de um aplicativo baseado em GUI, ao inicializar o MFC. Para um aplicativo do console, que não usa a função fornecido MFC WinMain , você deve chamar AfxWinInit diretamente ao inicializar o MFC.

Se você chamar AfxWinInit você mesmo, você deve declarar uma instância de uma classe de CWinApp . Para um aplicativo do console, você pode optar por não derivar sua própria classe de CWinApp e em vez disso, usar uma instância de CWinApp diretamente. Esta técnica é apropriada se você decidir deixar toda a funcionalidade para seu aplicativo em sua implementação de principal.

O TEAR exemplo mostra como tornar um aplicativo do console usando o MFC.

Exemplo

/ / Este arquivo deve ser compilado com /GX e /MT opções:
/ / cl /GX thisfile.cpp /MT

# include lt;afx.h >
# include <afxdb.h>
# include <iostream.h>

int Main)
{
   / / tenta inicializar o MFC

if (!.AfxWinInit(::GetModuleHandle(NULL), NULL,:: GetCommandLine(), 0))
   {
      cerr << "MFC falha ao inicializar!" << endl;
      retornar 1;
   }

/ / tenta se conectar a um banco de dados ODBC que não existe
   / / (isso não iria funcionar em tudo sem inicializar o MFC)

CDatabase db;
   Tente
   {
      DB.Abrir ("Esta Databsae não existe");

/ / podemos realisticamente não deve chegar aqui

Cout << "Successful!" << endl;
      Cout << "fechando … ";
      DB.Close ();
      Cout << "Fechado"! << endl;
   }
   catch (CDBException pEx)
   {
      / / Temos uma exceção! imprimir uma mensagem de erro
      / / (isso não iria funcionar sem inicializar o MFC)

Char sz [1024];

Cout << "erro:";
      se (pEx - > GetErrorMessage (sz, 1024))
         Cout << sz;
      outra pessoa
         Cout << "nenhuma mensagem de erro foi disponível";
      Cout << endl;

pEx - > Delete ();
      retornar 1;
   }

return 0;
}

Co&nsulte tambémnbsp;CWinApp, CWinApp: A classe de aplicativo, principal, WinMain

Index