私はQt 4.7.4を使用してWindows 8を使用しています(理由を尋ねないでください:p)このコード行を使用してAccessデータベースに接続しようとしています
db = QSqlDatabase::addDatabase("QODBC");
db.setDatabaseName("DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};FIL={MS Access};DBQ=MSG.accdb");
if (db.open()) {
qDebug() << "connected";
return true;
}
else
{
QSqlError error = db.lastError();
qDebug() << error.databaseText();
qDebug() << error.driverText();
return false;
}
もちろん、それは接続されず、IQ は次のようになります。
アプリケーション "C:\Program Files (x86)\Common Files\Microsoft Shared\office14\mso.dll" がキャッシュに見つかりません
"[Microsoft][Pilote ODBC Microsoft Access] 命名規則が正しくありません。"
「QODBC3: 接続できません」
ファイル MSG.accdb は、ビルド フォルダーのルートにあります。
「C:\Program Files (x86)\Common Files\Microsoft Shared\office14\」フォルダーを確認したところ、そこに MSO.DLL ファイルが見つかりました。