Aanmelden met Microsoft
Meld u aan of maak een account.
Hallo,
Selecteer een ander account.
U hebt meerdere accounts
Kies het account waarmee u zich wilt aanmelden.

Symptomen

U krijgt het volgende foutbericht weergegeven bij het openen van een database die is gemaakt met Access 2000 met behulp van DAO MFC-klassen in Visual C++:

Onbekende database-indeling.

Dit bericht wordt ook opvragen bij het maken van een nieuwe MFC DAO database SDI of MDI-project met behulp van MFC AppWizard.

Oorzaak

Deze fout treedt op omdat de DAO MFC-dat schip met Visual C++ 6.0 belasting DAO 3.5 (Dao350.dll klassen) standaard. DAO 3.5 gebruikmaakt van Jet 3.5 die alleen Jet 3.5-indeling kunt openen (of eerder) databases. Access 2000 maakt u databasebestanden, niet herkend op Jet 3.5 worden Jet 4.0-indeling. Om een Access 2000-database met de DAO MFC-klassen te openen, moet u DAO 3.6 (Dao360.dll) gebruiken. DAO 3.6 wordt Jet 4.0, die alle beschikbare Access-database-indeling kunt openen.

Oplossing

Er is momenteel geen oplossing voor AppWizard gebruiken met Access 2000-gegevensbronnen.

Voor de toepassing van DAO versie 3.6 gebruiken, moet u de versie van MFC tijdens het uitvoeren naar versie 6.01 MFC bijwerken. Hiervoor is afhankelijk van of het bouwen van de toepassing om de MFC-DLL te gebruiken of om te bouwen met de statische bibliotheken voor MFC.

Als u een koppeling met de MFC DLL, kunt u aangeven dat u MFC DAO 3.6 gebruiken door de volgende regel code invoegen voordat u een Access 2000-database openen:

AfxGetModuleState()->m_dwVersion = 0x0601;

Voeg deze regel in de CYourApp::Initinstance() functie van het programma. Als u met de statische MFC-bibliotheken, zijn de stappen om statische bouwt van MFC DAO 3.6 gebruiken:

  1. Het bestand Daocore.cpp in de directory SRC MFC wijzigen. U krijgt de volgende Microsoft-website:

    // Determine whether to use DAO 3.6, 3.5, or 3.0
    // Use DAO 3.0 if DLL build and not built with MFC 4.21 or later
    // Use DAO 3.6 if MFC 6.01 or later
    // otherwise, DAO 3.5

    Voeg de volgende regels:

    #undef _MFC_VER
    #define _MFC_VER 0x0601
  2. De bibliotheek voor de variant die u moet bouwen. Bijvoorbeeld voor het opbouwen van de statische MFC-bibliotheek foutopsporingsversie, niet-Unicode-met geen bestanden van de browser gebruiken met de volgende opdracht bij de opdrachtprompt in de map MFC\SRC:

      nmake DEBUG=1

    for release:
    nmake DEBUG=0

    for unicode builds:
    nmake DEBUG=1 UNICODE=1
    nmake DEBUG=0 UNICODE=1

Opmerking Moet u ervoor zorgen dat de compiler-hulpprogramma's in het pad. Als dit niet het geval is, moet u het bestand in de map \BIN Visual C++ Vcvars32.bat uitvoert. Rekening mee dat wanneer u deze nieuwe versies van de bibliotheken, worden deze gekopieerd over de bovenkant van de bestaande codes in de map MFC\LIB zodat kunt u de oude cijfers eerst opslaan.

Status

Dit gedrag is inherent aan het ontwerp.

Meer hulp nodig?

Meer opties?

Verken abonnementsvoordelen, blader door trainingscursussen, leer hoe u uw apparaat kunt beveiligen en meer.

Community's helpen u vragen te stellen en te beantwoorden, feedback te geven en te leren van experts met uitgebreide kennis.

Was deze informatie nuttig?

Hoe tevreden bent u met de taalkwaliteit?
Wat heeft uw ervaring beïnvloed?
Als u op Verzenden klikt, wordt uw feedback gebruikt om producten en services van Microsoft te verbeteren. Uw IT-beheerder kan deze gegevens verzamelen. Privacyverklaring.

Hartelijk dank voor uw feedback.

×