Keine Ahnung warum



  • Also mit Programmieren, kenn ich mich schon ein bisschen aus, deswegen verzweifel ich gleich. Also hier mein Code: Ein einfaches Fenster soll es sein (laut Tutorial)

    // Programm minimfc2.cpp
    #include <windows.h> //1
    
    class CMinimfc2App : public CWinApp //2
    {public:
      virtual BOOL InitInstance () ; //3
    } ;
    class CMainFrame : public CFrameWnd //4
    {public:
      CMainFrame () ; //5
    } ;
    
    CMinimfc2App theApp ; //6
    BOOL CMinimfc2App::InitInstance () //7
    {CMainFrame* m_pMainWnd = new CMainFrame() ; //8
     m_pMainWnd->ShowWindow (m_nCmdShow) ; //9
     return TRUE ;
    }
    CMainFrame::CMainFrame () //10
    {
    Create (NULL , "Programm MINIMFC2") ; //11
    }
    

    Und das sind die Fehler:

    main.cpp Line 7: Error E2303: Type Name Expected
    main.cpp Line 11: Error E2303: Type Name Expected
    main.cpp Line 18: Error E2316: 'ShowWindow' is not a member of 'CMainFrame' in function Cminimfc2App::InitInstance()
    main.cpp Line 18: Error E2451: Undefined symbol 'm_nCmdShow' in function Cminimfc2App::InitInstance()
    main.cpp Line 23: Error E2268: Call to undefined function 'Create' in function CMainFrame::CMainFrame()

    Noch folgendes Zu meinem System.

    Also hab ein x86 System den Borland Compiler 5.5 die IDE von Code::Blocks das SDK von Windows XP SP2 das SDK von Windows 2003 und das PSDK von Borland.
    Zusatzoptionen beim Compiler habe ich nicht gesetzt.

    Die SDK von Windows funktionieren gar nicht, wenn ich die mal mitlinken lasse, geht gar nix mehr, bzw. noch mehr Fehler.

    Zur Zeit Linke ich die LIBs von Borland und alle weiteren von Microsoft, bis auf die, die schon bei Borland dabei sind.

    Mit den Header dateien habe ich genauso verfahren.(Habe alle in einen Ordner kopiert, immer überschrieben, und in dieser reihenfolge: Windows 2003, Windows XP, Borland).

    Das läuft zumindest am bestens ein normales WinAPI-Fenster bekomme ich so zum laufen, und nur so. Sobald ich die Header von Microsoft benutze geht das auch nicht mehr.

    So, nun die Frage: Was mache ich falsch.

    PS.: Wo ist der Entry-Point bei obigen Code?



  • MFC ist nur in Verbindung mit Visual Studio vorhanden. Aber nicht bei jeder VS Version ist MFC dabei.
    Somit kannst Du wohl nur unter WinAPI programmieren. Zusätzlich könntest Du andere GUI-Frameworks einsetzen.


Anmelden zum Antworten