0

.mdbを使用してファイルを開こうとCDaoDatabaseしましたOpen()が、でエラーが発生しました: Unrecognised database format。最初に MSAcces2007 でデータベースを作成し、ファイルを として保存してから、.mdbMSAcces2003 をインストールしてファイルを再度作成しましたが、同じエラーが発生します。誰が何が起こっているのか手がかりを持っていますか?

CString pathDB = "SMACDB\\Transports.mdb";
CDaoDatabase dbTransp;

try
{
    dbTransp.Open(pathDB);

    CDaoRecordset rs(&dbTransp);
    COleVariant var1;
    rs.Open(dbOpenSnapshot, "SELECT * FROM Transporturi");
    while (!rs.IsEOF())
    {
        var1 = rs.GetFieldValue(1);
        CString val = (LPCTSTR)var1.bstrVal;
        g_carRestrict.pCarNmb.AddTail(val);
        var1 = rs.GetFieldValue(2);
        g_carRestrict.pAllowed.AddTail(var1.lVal);

        rs.MoveNext();
    }

    rs.Close();
    dbTransp.Close();
}
catch (CDaoException *pEx)
{
    pEx->Delete();
}
4

1 に答える 1

2

Visual C++ 6 はデフォルトで DAO 3.5 を使用しますが、これは Access 2000 以降の形式をサポートしていません。MFC で DAO 3.6 を使用するには、ランタイムのバージョン番号を 6.01 に変更します。

推奨読書:

Access 2000 で作成されたデータベースを開くと、「認識できないデータベース形式です」というエラー メッセージが表示される

于 2013-05-22T20:36:29.887 に答える