preise für datenbanksysteme
-
unix-tom, hab leider ein problem. kann mein projekt mit deiner klasse nicht compilieren.
der compiler schreibt folgendes:
...\databaselibodbc.h(82) : warning C4251: 'CODBCDatabase::m_ColArray': class 'CPtrArray' erfordert eine DLL-Schnittstelle, die von Clients von class 'CODBCDatabase' verwendet wird
D:\visualcpp\Vc7\atlmfc\include\afxcoll.h(367): Siehe Deklaration von 'CPtrArray'...\databaselibodbc.h(102) : warning C4251: 'CODBCDatabase::field': class 'ATL::CStringT<BaseType,StringTraits>' erfordert eine DLL-Schnittstelle, die von Clients von class 'CODBCDatabase' verwendet wird
with
[
BaseType=char,
StringTraits=StrTraitMFC<char>
]CDialogDB.obj : error LNK2019: Nicht aufgelöstes externes Symbol '"__declspec(dllimport) public: int __thiscall CODBCDatabase::connect(class ATL::CStringT<char,class StrTraitMFC<char,class ATL::ChTraitsCRT<char> > >)" (__imp_?connect@CODBCDatabase@@QAEHV?StrTraitMFC@DV?$ChTraitsCRT@D@ATL@@@@@ATL@@@Z)', verwiesen in Funktion '"public: void __thiscall CDialogDB::OnBnClickedBtDb(void)" (?OnBnClickedBtDb@CDialogDB@@QAEXXZ)'
ich habe die lib in der linker liste hinzugefügt und die header eingebunden. wenn ich das projekt dann neu compiliere kommen diese fehler.
was muss ich noch tun, um deine dll verwenden zu können?
-
@unix-tom:
ich benutze vc++.net 2003. release mode. in deine header datei habe ich auch schon mal reingeschaut und folgendes versucht:/*#ifndef _DATABASELIBODBC_API_NOAUTOLIB_ #ifdef _DEBUG #pragma comment(lib, "databaselibodbc.lib") #else*/ #pragma comment(lib, "databaselibodbc.lib") //#endif //#endifhat aber auch nichts gebracht.
-
zumindest teilweise erfolge erzielt!
im debug modus läufts.
in der header datei:
#ifndef _DATABASELIBODBC_API_NOAUTOLIB_ #ifdef _DEBUG #pragma comment(lib, "databaselibodbc.lib") #else #pragma comment(lib, "databaselibodbc.lib") #endif #endifund dann einen button on klick versehen mit:
if (m_databaseconnect.connected == false) { switch (m_databaseconnect.connect("user")) { case DB_CONNECTION_BAD: MessageBox("BAD"); break; case DB_CONNECTION_OK: MessageBox("oki"); break; } }es kommt ein "oki". das freut mich schon mal sehr!!!
aber jetzt komme ich mit dem konfigurationsmenü von devenv nicht klar. anscheinend liegt da der fehler.
kannst du mir eine richtige konfiguration nennen, sonst muss ich alles mögliche ausprobieren. dazu gesagt, ich habe seit der installation daran nichts verändert.