Fehler: name gefolgt von '::' muss eine Klasse oder ein namespace-name
Ich versuche zu bauen, meine ersten ATL-DLL-Projekt, in dem ich mit ADODB. Das Problem hier ist, dass ich bekomme jedes ADODB-Klasse Unterstrichen
ADODB::_ConnectionPtr spADOConnection;
wenn ich den pass mit der Maus über auf ADODB::_ConnectionPtr
bekomme ich name followed by '::' must be a class or namespace name
spADOConnection
bekomme ich expected a ';'
. Was bedeutet das, bitte? Wie kann ich es beheben bitte?
Vielen Dank!
- sieht aus wie C++ nicht wissen, dass ADODB ist eine Klasse oder ein namespace, ist alles korrekt aufgenommen/verlinkt in Ihrem Projekt? Sind Sie immer alle externen symbol-Fehler während der Kompilierung?
- Ich habe richtig enthalten
msado60.dll
, ja, ich bin immer ein externes symbol aufLNK2001: unresolved external symbol "public: virtual long __stdcall CTProcessus::Init(class ATL::CStringT > >,wchar_t *,wchar_t *,wchar_t *)"
- Sie enthalten keine DLLs, include-header-Dateien.
- als juanchopanza sagte, Ihre .dll in das gleiche Verzeichnis wie die ausführbare Datei. Es ist nicht etwas, die Sie umfassen würde, die aus der Eigenschaften-Seite
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ist der compiler nicht in der Lage zu lokalisieren die Erklärung der
ADODB
. Stellen Sie sicher, dass Sie die entsprechenden header in der übersetzungseinheit, in denen der compiler sich beschwert.msado60.dll
ADODB
eingeführt. Stellen Sie sicher, es ist enthalten in der Quell-Datei, die Sie versuchen zu kompilieren.