Iniciar sessão com a Microsoft
Iniciar sessão ou criar uma conta.
Olá,
Selecione uma conta diferente.
Tem várias contas
Selecione a conta com a qual pretende iniciar sessão.

Sintomas

Quando abrir uma base de dados criada no Access 2000 através de classes MFC DAO no Visual C++, recebe a seguinte mensagem de erro:

Formato de base de dados não reconhecido.

Também receber esta mensagem quando tentar criar uma nova base de dados de MFC DAO SDI ou projecto MDI utilizando AppWizard de MFC.

Causa

Esta mensagem de erro ocorre porque o DAO MFC classes desse navio com a carga de Visual C++ 6.0 DAO 3.5 (Dao350) por predefinição. DAO 3.5 utiliza Jet 3.5, que só pode abrir o formato do Jet 3.5 (ou anterior) bases de dados. Access 2000 cria o formato do Jet 4.0 ficheiros de base de dados, que são não reconhecidos para Jet 3.5. Para abrir com êxito uma base de dados do Access 2000 utilizando as classes MFC DAO, é necessário utilizar o DAO 3.6 (Dao360. dll). Utiliza o DAO 3.6 Jet 4.0, que pode abrir qualquer formato de base de dados do Access disponível.

Resolução

Actualmente, não existe solução para utilizar AppWizard com origens de dados do Access 2000.

Para a aplicação para utilizar o DAO versão 3.6, tem de actualizar a versão do MFC em tempo de execução para MFC versão 6.01. Para o fazer depende se estiver a criar a aplicação para utilizar a DLL de MFC ou para construir com as bibliotecas estáticas para MFC.

Se estiver a ligar com a DLL de MFC, pode especificar que pretende que o MFC para utilizar o DAO 3.6, introduzindo a seguinte linha de código antes de abrir uma base de dados do Access 2000:

AfxGetModuleState()->m_dwVersion = 0x0601;

Inserir linha na função CYourApp::Initinstance() do programa. Se estiver a criar com as bibliotecas MFC estáticas, seguem-se os passos para fazer estático cria de MFC para utilizar o DAO 3.6:

  1. Modificar o ficheiro Daocore.cpp no directório de origem MFC. Receberá o seguinte comentário:

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

    Adicione as seguintes linhas:

    #undef _MFC_VER
    #define _MFC_VER 0x0601
  2. Reconstrua a biblioteca para a variante que necessita. Por exemplo, para criar a biblioteca MFC estática, versão de depuração, não-Unicode, com ficheiros do browser utilizar o seguinte comando na linha de comandos na pasta MFC\SRC:

      nmake DEBUG=1

    for release:
    nmake DEBUG=0

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

Nota É necessário para se certificar de que as ferramentas de compilador estão no caminho. Caso contrário, poderá ter de executar o ficheiro de Vcvars32.bat, localizado na pasta \BIN Visual C++. Tenha também em atenção que, quando criar estas novas versões das bibliotecas, serão copiados no topo do existentes na pasta MFC\LIB, de forma que pretende guardar os ficheiros mais antigos primeiro.

Estado

Este comportamento ocorre por predefinição.

Precisa de mais ajuda?

Quer mais opções?

Explore os benefícios da subscrição, navegue em cursos de formação, saiba como proteger o seu dispositivo e muito mais.

As comunidades ajudam-no a colocar e a responder perguntas, a dar feedback e a ouvir especialistas com conhecimentos abrangentes.

Estas informações foram úteis?

Quão satisfeito está com a qualidade do idioma?
O que afetou a sua experiência?
Ao selecionar submeter, o seu feedback será utilizado para melhorar os produtos e serviços da Microsoft. O seu administrador de TI poderá recolher estes dados. Declaração de Privacidade.

Obrigado pelo seu feedback!

×