Přihlásit se pomocí účtu Microsoft
Přihlaste se nebo si vytvořte účet.
Dobrý den,
Vyberte jiný účet.
Máte více účtů.
Zvolte účet, pomocí kterého se chcete přihlásit.

Příznaky

Při otevření databáze vytvořené v aplikaci Access 2000 pomocí tříd knihovny MFC rozhraní DAO v aplikaci Visual C++, zobrazí se následující chybová zpráva:

Neznámý formát databáze.

Se také zobrazí tato zpráva při pokusu o vytvoření nové databáze knihovny MFC rozhraní DAO SDI nebo MDI projektu pomocí MFC AppWizard.

Příčina

Této chybě dochází, protože třídy knihovny MFC rozhraní DAO, lodě s Visual C++ 6.0 zatížení DAO 3.5 (Dao350.dll) ve výchozím nastavení. DAO 3.5 používá databázový stroj Jet 3.5, který lze otevřít pouze formát Jet 3.5 (nebo nižší) databáze. Access 2000 vytvoří databázové soubory, které jsou na Jet 3.5 nelze rozpoznat formát Jet 4.0. Úspěšně otevřít databázi Access 2000 pomocí tříd knihovny MFC rozhraní DAO, je nutné použít rozhraní DAO 3.6 (Dao360.dll). DAO 3.6 používá databázový stroj Jet 4.0, který můžete otevřít všechny dostupné databáze formátu aplikace Access.

Řešení

V současné době není žádné řešení pro použití AppWizard s zdroje dat aplikace Access 2000.

Pro aplikace pomocí objektu DAO verze 3.6 je nutné aktualizovat verzi knihovny MFC v době běhu MFC verze 6.01. To lze provést, závisí na tom, zda vytváříte aplikaci použít MFC DLL nebo sestavení s statických knihoven MFC.

Vytváříte-li propojení s knihovnou MFC DLL, můžete zadat požadované knihovny MFC použití DAO 3.6 vložením následující řádek kódu před otevřete databázi aplikace Access 2000:

AfxGetModuleState()->m_dwVersion = 0x0601;

Vložte tento řádek ve funkci CYourApp::Initinstance() v programu. Pokud vytváříte s statických knihoven MFC, jsou následující kroky získat statické sestavení knihovny MFC použití DAO 3.6:

  1. Upravte soubor Daocore.cpp v adresáři MFC SRC. Obdržíte následující komentář:

    // 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

    Přidejte následující řádky:

    #undef _MFC_VER
    #define _MFC_VER 0x0601
  2. Znovu vytvořte knihovny varianty, které potřebujete. Například k vytvoření statické knihovny MFC ladicí verze, kódování Unicode, žádné soubory s použijte následující příkaz příkazového řádku ve složce MFC\SRC:

      nmake DEBUG=1

    for release:
    nmake DEBUG=0

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

Poznámka: Potřebujete provést určité které kompilační nástroje jsou v zadané cestě. Pokud ne, budete muset spustit soubor Vcvars32.bat umístěný ve složce \BIN Visual C++. Všimněte si také, že při vytváření nové verze těchto knihoven, budou tyto zkopírovány přes existující ve složce MFC\LIB, je vhodné nejprve uložit staré.

Stav

Toto chování je záměrné.

Potřebujete další pomoc?

Chcete další možnosti?

Prozkoumejte výhody předplatného, projděte si školicí kurzy, zjistěte, jak zabezpečit své zařízení a mnohem více.

Komunity vám pomohou klást otázky a odpovídat na ně, poskytovat zpětnou vazbu a vyslechnout odborníky s bohatými znalostmi.

Byly tyto informace užitečné?

Jak jste spokojeni s kvalitou jazyka?
Co ovlivnilo váš názor?
Po stisknutí tlačítka pro odeslání se vaše zpětná vazba použije k vylepšování produktů a služeb Microsoftu. Váš správce IT bude moci tato data shromažďovat. Prohlášení o zásadách ochrany osobních údajů.

Děkujeme vám za zpětnou vazbu.

×