Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Mfc und Vc++

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
17.02.2003, 19:56 Uhr
~Lars
Gast


Hallo zusammen,
will mich gerade mal in MFC einarbeiten und bekomme nicht einmal ein "Hello World" (ohne AppWizard) Programm hin.

Fehler:
libcmtd.lib(crt0.obj) : error LNK2001: Nichtaufgeloestes externes Symbol _main
Debug/CTopSpin.exe : fatal error LNK1120: 1 unaufgeloeste externe Verweise

Der selbstgeschirebene Code ist definitiv richtig. Ich habe in Projekt/Einstellungen/Allgemein auf statische MFC Bibliotheken umgestellt (Visual C++). Außerdem habe ich im Vergleich zum AppWizard einige Dirketiven weggelassen. Das dürfte aber eigentlich nix ausmachen.
Das programm hat keine main Methode, sondern nur in der .cpp Datei, die von CWinApp erbt eine Deklaration der Anwendungsvariable. Das müsste eigentlich ausreichen.
Ich verwende Visual C++ und WinXP.

Was mache ich falsch. Ist vielleicht noch etwas in Visual C++ für MFC umzustellen?

Danke für eure HIlfe.

Lars
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
17.02.2003, 21:09 Uhr
Uwe
C/C++ Master
(Administrator)


Hallo Lars,
Was hast Du als Projektformat gewählt. Poste ggf. mal etwas Quellcode.

Zitat:
Ich verwende Visual C++ und WinXP

Das hat nichts mit "Bonbon"-Windows zu tun
--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe

Dieser Post wurde am 17.02.2003 um 21:09 Uhr von Uwe editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
18.02.2003, 10:09 Uhr
~Lars
Gast


Hi,
Die Projektdatei ist eine .dsp und Arbeitsbereich .dsw. Das ist doch aber immer so oder?
Ich habe einfach eine cpp Datei geschrieben und aus dieser ein Projekt erstellt.

Es sind 4 files:
1.) CTopSpinApp.cpp

C++:
#include "CTopSpinApp.h"
#include "CTopSpinGUI.h"

//init App --> müsste an der Stelle eigentlich App starten
CTopSpinApp topspin;

//golbal application settings
BOOL CTopSpinApp::InitApplication()
{    
    return TRUE;
}

//settings of application instance
BOOL CTopSpinApp::InitInstance()
{    
    m_pMainWnd=new CTopSpinGUI();
    m_pMainWnd->ShowWindow(m_nCmdShow);
    m_pMainWnd->UpdateWindow();
    return TRUE;
}


2.) CTopSpinApp.h

C++:
#include "afxwin.h"

class CTopSpinApp:public CWinApp
{
public:    
    virtual BOOL InitApplication();
    virtual BOOL InitInstance();    
};


3.) CTopSpinGUI.cpp

C++:
#include "CTopSpinGUI.h"

BEGIN_MESSAGE_MAP(CTopSpinGUI,CFrameWnd)
    ON_WM_PAINT()
END_MESSAGE_MAP()

CTopSpinGUI::CTopSpinGUI()
{
    Create(NULL,"CTopSpin",WS_OVERLAPPEDWINDOW,rectDefault);
};

void CTopSpinGUI::OnPaint()
{
    CClientDC dc(this);
    dc.TextOut(0,0,"Moin");
}


4.)CTopSpinGUI.h

C++:
#include <afxwin.h>

class CTopSpinGUI:public CFrameWnd
{
public:
    CTopSpinGUI();

protected:
    void OnPaint();
    
    DECLARE_MESSAGE_MAP()    
};


Liegt es vielleicht daran, das ich zweimal afxwin.h include?

Danke.

Lars

Dieser Post wurde am 18.02.2003 um 18:07 Uhr von Uwe editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
18.02.2003, 18:25 Uhr
Uwe
C/C++ Master
(Administrator)


Hallo Lars,

Zitat:
~Lars postete
Hi,
Die Projektdatei ist eine .dsp und Arbeitsbereich .dsw. Das ist doch aber immer so oder?


Das war eigentlich nicht gemeint, sondern was Du zu beginn für ein Projektformat gewählt hast? Na egal, schau mal unter :
Projekt/Projekteinstellungen/C++/Laufzeit-bibliothek/
dort stellst Du "Multithreadet debuggen" ein: Dann unter "Linker" muß unter "Projektoptionen" /subsystem:windows (steht bei Dir garantiert auf console) eingestellt sein.
--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
19.02.2003, 12:39 Uhr
~Lars
Gast


Ahhhh....
danke für den Tipp! ES funktioniert jetzt. 'Jetzt kann es ja richtig losgehen. Ich glaub da hätte ich noch lange suchen können.
Ich hoffe das andere, was Windoof Programmierung angeht geht etwas besser. Da war Java irgendwie einfacher.

Aber egal...

auf jeden Fall, vielen Dank!

MfG
Lars
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
19.02.2003, 19:43 Uhr
Uwe
C/C++ Master
(Administrator)


Hallo,

Zitat:
~Lars postete
...ES funktioniert jetzt. 'Jetzt kann es ja richtig losgehen.


Kurze Anmerkung:
Wenn Du später einmal ein MFC Projekt baust, brauchst Du diese Einstellung nicht mehr vorzunehmen.
--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: