#include "stdafx.h"
#import "C:\Program Files\Common Files\System\ado\msado27.tlb" \
rename("EOF","ADOEOF") rename("BOF","ADOBOF")
// оператор rename необходим, т.к. EOF определён как макрос
// в файле stdio.h
using namespace ADODB;
void main()
{
::CoInitialize(NULL);
try {
// открываем соединение с БД
_ConnectionPtr con("ADODB.Connection");
con->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\db1.mdb","","",0);
// логика программы
}
} catch (_com_error& er)
{
char buf[1024];
sprintf(buf,"_com_error:\n"
"Error : %08lX\n"
"ErrorMessage: %s\n"
"Description : %s\n"
"Source : %s\n",
er.Error(),
(LPCTSTR)_bstr_t(er.ErrorMessage()),
(LPCTSTR)_bstr_t(er.Description()),
(LPCTSTR)_bstr_t(er.Source()));
printf(buf);
}
::CoUninitialize();
}
Ошибка 80004005 при использовании ADO
Пробую открыть файл базы данных созданный программой Access. При попытке открыть происходит ошибка 80004005. Что в этом коде не так?