Продолжая этот вопрос Что такое ConnectionString для создания OdbcConnection для mdb-файла доступа , Я хотел бы знать, как написать строку подключения для подключения к файлу .mdb из 64-битного приложения — за исключением этого времени я пытаюсь сделать это из 64-битного приложения c ++ вместо C #. Не уверен, если это имеет значение, поэтому я положил это здесь 🙂
Когда я компилирую для 32-битного, я могу подключиться к моему файлу MDB с
"driver={Microsoft Access Driver (*.mdb)};Dbq=mlog.mdb;UID=;PWD="
Я не уверен, что это оптимальный путь, но он работает.
Теперь мне нужно скомпилировать мое приложение в 64-битной версии. строка подключения сверху больше не работает, поэтому я проверил http://www.connectionstrings.com/access/ и попробовал
"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=mlog.mdb;Persist Security Info=False;"
но безуспешно
я использую
ret = SQLDriverConnect(dbc, 0, connectionstring, SQL_NTS, outstr, 1024, &outstrlen, SQL_DRIVER_NOPROMPT);
if (SQL_SUCCEEDED(ret)) ...
попытаться подключиться. Но это всегда терпит неудачу. когда я вызываю SQLGetDiagRec (), он возвращает пустые строки.
Я также установил 64-разрядные драйверы Access 2010. Проверка c: \ windows \ system32 \ odbcad32.exe tehre является «установленным драйвером Microsoft Access (* .mdb, * .accdb)» версии 14.00.7010.1000 в ACEODBC.DLL.
Что здесь не так?
Задача ещё не решена.
Других решений пока нет …