"_com_error" Не удается открыть SQL Server с помощью ADO C ++ - PullRequest
0 голосов
/ 25 марта 2019

Я пытаюсь подключить свой проект C ++ к SQL Server, используя ADO.it, работает хорошо при проверке первого «hr», но возникает ошибка при открытии базы данных во втором операторе «if», он говорит «Microsoft C++ exception: _com_error at memory location».

Интересно, в чем проблема и как я могу открыть базу данных?или есть другой способ открыть базу данных?

Я уже пытался изменить _ConnectionPtr pConnection = NULL; в этот _ConnectionPtr pConnection("ADODB.Connection").вот мой код:

HRESULT hr = S_OK;

_ConnectionPtr pConnection = NULL;
_RecordsetPtr   pRecordset = NULL;

_bstr_t strCon("Data Source=...\\SQLEXPRESS;Initial Catalog=TestDB;Integrated Security=True");

hr = pConnection.CreateInstance((__uuidof(Connection)));
if (FAILED(hr))
{
    printf("Error instantiating Connection objectn");
}

//Open the SQL Server connection
hr = pConnection->Open(strCon, "", "", 0);
if (FAILED(hr))
{
    printf("Error Opening Database object using ADO _ConnectionPtr n");
}
...