Fehler: C2653: is not a class or namespace name - und keine Ahnung warum?!
-
Hallo zusammen,
ich bekomme folgenden Fehler:
error C2653: 'Events' : is not a class or namespace name
Bei dem folgenden Quellcode:
#include "stdafx.h" #include "XFSAPI.H" #include "XFSIDC.H" #include "XFSPIN.H" using namespace System; using namespace System::Text; using namespace System::Collections::Generic; using namespace Microsoft::VisualStudio::TestTools::UnitTesting; namespace XFS_CUnit_Test { [TestClass] public ref class UnitTest_PIN { private: TestContext^ testContextInstance; static unsigned short handle; public: [ClassInitialize()] static void initialize(Microsoft::VisualStudio::TestTools::UnitTesting::TestContext tc) { /** Start event thread **/ ... WNDCLASS wndClass; wndClass.style = 0; wndClass.lpfnWndProc = Events::windowProc; wndClass.cbClsExtra = 0; wndClass.cbWndExtra = 0; wndClass.hInstance = hInstance; wndClass.hIcon = NULL; wndClass.hCursor = NULL; wndClass.hbrBackground = NULL; wndClass.lpszMenuName = NULL; wndClass.lpszClassName = "Example"; // Name used in call to CreateWindowEx ... }; }; // Class that handles XFS events public ref class Events { // Window procedure that handles the WOSA/XFS events public static LRESULT CALLBACK Events::windowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam ) { ... }; }; }
Die Klasse Event schlägt mir VS sogar im Editor vor und sie ist im gleichen cpp File und im Namespace. Ich habe schon im Netz geuscht aber leider noch keine passende Hilfe gefunden
Müsste ich ein Header File erstellen?Hat da jemand vielleicht eine Idee?
Vielen Dank!
Keks
-
public static LRESULT CALLBACK Events::windowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam ) { ... };
Das darfst du natürlich nicht schreiben, warum schreibst du dieses... "Präfix"
Events::
überhaupt? Das mussst du weglassen.MfG
-
Upps sorry, das hatte ich eigentlich nur zum Test eingebaut. Mit und ohne "Events::" ist das Ergebnis das gleiche
-
Keks_DSC schrieb:
Upps sorry, das hatte ich eigentlich nur zum Test eingebaut. Mit und ohne "Events::" ist das Ergebnis das gleiche
Okay. Auf welcher Zeile kommt der Fehler dann? Die Aufteilung in Header und Quelltext hat, sofern man es richtig macht, keinen Einfluss auf solche Dinge. Die Reihenfolge der Deklarationen könnte aber für ein derartiges Problem verantwortlich sein.
-
/rant/ schrieb:
Die Reihenfolge der Deklarationen könnte aber für ein derartiges Problem verantwortlich sein.
Das war der entscheidende Tipp! Danke!!!
Schreibe ich die Event Klasse im Quellcode über die UnitTest_PIN Klasse kommt dieser Fehler nicht mehr.Jetzt gehts weiter mit dem nächsten Fehler, aber da muss ich erstmal wieder selbst versuch drauf zu kommen
Danke nochmal!