Hallo,
ja, CEditView wird in afxext.h deklariert. Und diese Deklaration sollte auch am besten so bleiben, denn CEditView liegt in der Ableitungshierarchie (ausgehend von CObject) sehr tief.
Mir sieht es auf den ersten Blick so aus, dass Du afxext.h includierst, aber die defines nicht mehr stimmen. In afxext.h sind naemlich gewoehnlich die defines schon gesetzt ueber:
#ifndef __AFXEXT_H__
#define __AFXEXT_H__
…
#endif //__AFXEXT_H__
In der Regel nimmt man afxext.h in stdafx.h mit auf, das widerum vom Wizard generiert wurde und dort auch ueber defines mehrfach includierung ausschliesset:
Der Teil sollte in der Regel dann in etwa so aussehen:
#if !defined(AFX\_STDAFX\_H\_\_B1588CE4\_921D\_11D5\_AA8B\_000083445577\_\_INCLUDED\_)
#define AFX\_STDAFX\_H\_\_B1588CE4\_921D\_11D5\_AA8B\_000083445577\_\_INCLUDED\_
#if \_MSC\_VER \> 1000
#pragma once
#endif // \_MSC\_VER \> 1000
#define VC\_EXTRALEAN // Exclude rarely-used stuff from Windows headers
#include
#include // sef(08/02/2001): Used for AnsiToUnicode method
#include
// TODO: reference additional headers your program requires here
//{{AFX\_INSERT\_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX\_STDAFX\_H\_\_B1588CE4\_921D\_11D5\_AA8B\_000083445577\_\_INCLUDED\_)
Unter TODO solltest Du es includieren und dann im Projekt nach Mehrfacheinbindungen noch mal suchen, diese entfernen und immer nur stdafx.h jeweils in den cpp-Dateien einbinden.
Cu