Może coś Ci pomoże taki kawałek kodu:
#include
namespace MSADOCE
{
#include
}
#include
MSADOCE::IADOCEConnection *iADOCEConn = NULL; //Connection Object
MSADOCE::IADOCERecordset *iADOCERS = NULL; //Recordset Object
MSADOCE::IADOCEFields *iADOCEFields = NULL; //Fields Object
IID IID__Recordset = {0x113033F6,0xF682,0x11D2,{0xBB,0x62,0x00,0xC0,0x4F,0x68,0x0A,0xCC}};
IID IID__Connection = {0x113033DE,0xF682,0x11D2,{0xBB,0x62,0x00,0xC0,0x4F,0x68,0x0A,0xCC}};
TCHAR tsADOCE30ConnProgID[]= TEXT("ADOCE.Connection.3.0");
TCHAR tsADOCE30RSProgID[]= TEXT("ADOCE.Recordset.3.0");
CLSID tClsid;
HRESULT hr;
VARIANT varConn1,varTSQL,varEmpty;
hr = CoInitializeEx(NULL,COINIT_MULTITHREADED);
if(!SUCCEEDED(hr)) return 0;
VariantInit(&varConn1);
VariantInit(&varTSQL);
VariantInit(&varEmpty);
hr = CLSIDFromProgID( tsADOCE30ConnProgID, &tClsid );
if (FAILED(hr)) return 0; // Error handling here: ADOCE3.0 not found
hr = CoCreateInstance (tClsid, NULL,
CLSCTX_INPROC_SERVER | CLSCTX_LOCAL_SERVER,
IID__Connection, (LPVOID *)&iADOCEConn);
if(iADOCEConn && !FAILED(hr))
{
hr=iADOCEConn->put_Provider(TEXT("cedb"));
// Jako pierwszy parametr Open podaj nazwe pliku cdb
hr=iADOCEConn->Open(TEXT(""),TEXT(""),TEXT(""),MSADOCE::adOpenUnspecified);
hr=CLSIDFromProgID( tsADOCE30RSProgID, &tClsid );
hr = CoCreateInstance (tClsid, NULL,CLSCTX_INPROC_SERVER | CLSCTX_LOCAL_SERVER,IID__Recordset,(LPVOID *)&iADOCERS);
if(iADOCEConn && !FAILED(hr))
{
varConn1.pdispVal=iADOCEConn;
varConn1.vt=VT_DISPATCH;
hr=iADOCERS->put_ActiveConnection(varConn1);
[Dodano: 2003-12-08 13:27:42]
hehe zjadło incudy:
objsafe.h
adoce30.h
ocidl.h