AfxWinInit

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

Parametry

wystąpienie hInstance

Uchwyt aktualnie uruchomione moduł.

hPrevInstance

Uchwyt do poprzed&niego wystąpienia application.nbsp; Dla aplikacji systemu Win32 ten parametr jest zawsze zerowa.

lpCmdLine

Wskazuje ciąg zakończony zerem, określający wiersza polecenia dla aplikacji.

nCmdShow

Określa, jak będą wyświetlane okna głównego aplikacji GUI.

Uwagi

Ta funkcja zostaje wywołana przez funkcję dostarczone MFC WinMain w ramach inicjalizacji CWinApp aplikacji opartej na GUI, zainicjować klas MFC. Dla aplikacji konsoli, który nie używa funkcji dostarczanych MFC WinMain , należy wywołać AfxWinInit bezpośrednio zainicjować klas MFC.

Jeśli wywołasz AfxWinInit sobie, należy zadeklarować instancję klasy CWinApp . Dla aplikacji konsoli można wybrać czerpią swoją własną klasę z CWinApp i zamiast tego użyć instancji CWinApp bezpośrednio. Ta technika jest odpowiedni, jeśli użytkownik chce pozostawić wszystkie funkcje aplikacji w danej implementacji główne.

TEAR próbki pokazuje, jak utworzyć aplikację konsoli przy użyciu MFC.

Przykład

/ / Ten plik musi być skompilowany z opcjami /GX i /MT:
/ / cl /GX /MT thisfile.cpp

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

int main()
{
   / / spróbuj zainicjować klas MFC

if (!.AfxWinInit(::GetModuleHandle(NULL), NULL,:: ciąg, 0))
   {
      cerr << "MFC nie może zainicjować!" << endl;
      zwrócona wartość 1;
   }

/ / Spróbuj połączyć się z bazy danych ODBC, który nie istnieje
   / / (to nie działa na wszystkich bez inicjowanie MFC)

CDatabase db;
   Spróbuj
   {
      DB.Otwórz ("to Databsae nie istnieje");

/ / nie możemy realistycznie get here

Cout << "Powodzenie!" << endl;
      Cout << "... z zamknięciem ";
      DB.Metody Close();
      Cout << "Zamknięte!" << endl;
   }
   połów (CDBException * pEx)
   {
      / / Doszliśmy wyjątek! drukowanie komunikat o błędzie
      / / (to nie działa bez inicjowanie MFC)

sz char [1024];

Cout << "Błąd:";
      Jeżeli (pEx - > GetErrorMessage (sz, 1024))
         Cout << sz;
      Else
         Cout << "żaden komunikat o błędzie był dostępny";
      Cout << endl;

pEx - > Delete();
      zwrócona wartość 1;
   }

zwrócona wartość 0;
}

Zobacz też CWinApp, CWinApp: aplikacji klasy, głównym, WinMain

Index