ADO и unresolved external
От: Аноним  
Дата: 07.12.11 14:41
Оценка:
Где грабли???


// DbConnection.h
    #import "C:\Program Files\Common Files\System\ado\msado27.tlb" \
            rename( "EOF", "ADOEOF" ) rename( "BOF", "ADOBOF" )

    using namespace ADODB;
    typedef _ConnectionPtr CConnection;
    typedef _CommandPtr CQuery;

class DbConnection
{
private:
    CConnection  m_hConnection;
    
public:
    DbConnection();
    ~DbConnection();
    
    inline CConnection & Connection();
};

// DbConnection.cpp
CConnection & DbConnection::Connection()
{
    return( m_hConnection );
}

// DbQuery.h
class DbQuery
{
private:
    CQuery  m_hQuery;

public:
    DbQuery( CConnection & connection, const string & QueryText );
    virtual ~DbQuery();
};

// DbQuery.cpp
DbQuery::DbQuery( CConnection & connection, const string & QueryText ) :
    m_hQuery( NULL )
{
    m_hQuery.CreateInstance( __uuidof( Command ));
    m_hQuery->ActiveConnection = connection;
    m_hQuery->CommandText = QueryText.c_str();
    m_hQuery->CommandType = adCmdText;
}

// test.cpp
DbConnection dbConn;
dbConn.Connect( "TestDb", "SERVER\\BASE", "", "" );
DbQuery query( dbConn.Connection(), string( "SELECT * FROM xxx" ));  // <- в этой строчке unresolved external
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.