ACC: Como criar, depurar e usar uma biblioteca do Microsoft Access

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 88175
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Sumário
Moderado: Requer básica de macro, codificação e interoperabilidade habilidades.

Este artigo descreve uma biblioteca do Microsoft Access e discute como criar e depurar uma biblioteca, bem como algumas coisas a serem observadas.

Este artigo presume que você esteja familiarizado com o Access Basic e com a criação de aplicativos do Microsoft Access usando as ferramentas de programação fornecidas com o Microsoft Access. Para obter mais informações sobre o Access Basic, consulte o manual "Introdução à programação" no Microsoft Access versão 1.x ou o manual "Building Applications" na versão 2.0.
Mais Informações

Definição de biblioteca básica de acesso

Quando você escreve um aplicativo do Microsoft Access, como o banco de dados exemplo NWIND.MDB, o aplicativo funciona somente no banco de dados no qual ele foi criado. Isso é satisfatório para muitos aplicativos que usam especificamente os dados que reside no banco de dados do aplicativo.

No entanto, muitos desenvolvedores do Microsoft Access escrever aplicativos genéricos, programas e utilitários que são projetados para trabalhar no banco de dados qualquer usuário. Um exemplo disso é assistentes. Os assistentes estão Access Basic programas que residem no próprio banco de dados, mas estão disponíveis em qualquer banco de dados aberto. Se isso não fosse o caso, você não pode usar um assistente fora do que os objetos de programa e do sistema Assistente residem no banco de dados. Para disponibilizar um programa código e objetos de qualquer banco de dados de usuário, você deve carregar o banco de dados que contém o programa e seus objetos como uma biblioteca.

Para carregar um banco de dados como uma biblioteca, você deve abrir o arquivo .ini (MSACCESS.INI no Microsoft Access versão 1.x, MSACC20.INI na versão 2.0) e adicione uma linha à seção bibliotecas. Quando você abre o arquivo .ini inicialmente, você provavelmente verá uma seção de bibliotecas com uma entrada para a biblioteca de assistentes:

   [Libraries]   wizard.mda=ro				


Observação: Se não houver nenhuma seção bibliotecas, adicione-o ao final do arquivo e continuar. O arquivo de inicialização pode ser encontrado na pasta do Windows.

"Ro" na entrada do assistente significa que a biblioteca é somente leitura. Se você tiver um aplicativo que usa suas próprias tabelas que devem ser gravados em qualquer momento no seu programa, você deve especificar "rw" em vez de "ro." Por exemplo, para adicionar um aplicativo chamado STOCKAPP.MDB usa suas próprias tabelas que podem ser modificadas, adicione a seguinte linha no arquivo de inicialização:

   stockapp.mdb=rw				


A seção [bibliotecas] concluída pode parecer com:

   [Libraries]   wizard.mda=ro   stockapp.mdb=rw				


Dadas essas entradas de biblioteca, a biblioteca WIZARD.MDA será carregado leitura-somente e biblioteca STOCKAPP.MDB será carregada como leitura-gravação. Após reiniciar o Microsoft Access será possível abrir uma janela imediata em um banco de dados do usuário e chamar procedimentos Sub e função de STOCKAPP.MDB ou abrir tabelas, consultas, formulários ou relatórios com instruções DoCmd. Apesar de poder acessar os objetos de banco de dados e código de STOCKAPP.MDB, você não pode vê-los na janela banco de dados.

Observe que quando um banco de dados é carregado como uma biblioteca, ele não pode ser aberto como um banco de dados de usuário.

Escrever e depurar código Access Basic Library

Quando você escreve um aplicativo Access Basic para ser usado como uma biblioteca, você está fazendo pouco mais de escrever o aplicativo no banco de dados usuário com a intenção de usá-lo como uma biblioteca em um ponto posterior. Devido a isso, uma regra geral é Certifique-se o aplicativo funciona completamente antes de tentar usá-lo como uma biblioteca.

Embora esta regra geral é suficiente para criar vários tipos de aplicativos de biblioteca com êxito, existem algumas armadilhas importantes para observar ao escrever um aplicativo de biblioteca, mesmo se o aplicativo funciona perfeitamente como um banco de dados do usuário.

Depuração um erro em um banco de dados biblioteca

Microsoft Access versão 1.x:

Se o banco de dados biblioteca gera um erro que ocorre somente enquanto é uma biblioteca, pode ser muito difícil localizar. Um erro pode ocorrer que lhe dá uma idéia da área geral do problema, mas pode haver pouca ou nenhuma indicação de linha incorreta. Porque você não pode definir e usar pontos de interrupção e depuração em aplicativos de biblioteca, você deve projetar interceptações de erro que transmitem mensagens significativas e indicam o local do problema.

Outra dica depuração é colocar caixas de mensagem em áreas de etapa do código para que você sempre tenha uma idéia do qual o código está sendo executado.

Microsoft Access versão 2.0:

Adicione a seguinte linha à seção [Options] do arquivo MSACC20.INI. Se a seção [Options] não existir, adicione-o para a parte inferior do arquivo.

   DebugLibraries=True				


A seção concluída pode parecer com:

   [Options]   DebugLibraries=True				


Isso permite que o depurador de código aparecem quando ocorre um erro de tempo de execução em um módulo de biblioteca. Você também pode obter o código de biblioteca usando o comando exibir procedimentos quando estiver no modo de design do módulo. Observe que isso será tendem a reduzir o desempenho porque o código de biblioteca terá que ser recompilado. Remova esta opção quando o depurador de código não é necessário.

CodeDB() Versus CurrentDB()

Acesso Basic inclui a função CodeDB() para abrir bancos de dados biblioteca. A função CodeDB() funciona exatamente para a função CurrentDB() se você estiver executando o aplicativo como um banco de dados de usuário. No entanto, se você estiver executando o aplicativo como uma biblioteca, CodeDB() retorna o objeto de banco de dados para banco de dados biblioteca da qual ele foi chamado, enquanto CurrentDB() retorna o objeto de banco de dados do banco de dados usuário abrir atual. Devido a isso, é fácil confundir uma para o outro.

Funções de domínio

Funções de domínio devem ser usadas com cuidado em módulos de biblioteca porque eles podem apenas tabelas de usuário de processo e tabelas de biblioteca não.

Macros em uma biblioteca

Microsoft Access versão 1.x:

De todos os objetos que você pode criar em um banco de dados Microsoft Access, as macros são do tipo somente de objeto que não é possível usar em um aplicativo de biblioteca. O problema mais óbvio que isso apresenta é que formulários requerem o uso de macros para ter menus. Devido a essa limitação, você deve Certifique-se usar somente código Access Basic para programação.

Microsoft Access versão 2.0:

No Microsoft Access 2.0, você pode chamar uma macro de um banco de dados biblioteca. No entanto, porque você não pode usar interceptação de erro em macros, as macros devem ser evitadas, exceto para implementar menus personalizados.

Chaves podem ser redefinidas no banco de dados de usuário

Porque o banco de dados de usuário pode conter uma macro AutoKeys para redefinir o significado das chaves, você deve usar cuidado ao usar EnviarSeqüênciaDeCaracteres em seu aplicativo de biblioteca. Use outras ações de macro onde for apropriado e use teclas de atalho e a tecla TAB em vez das teclas de direção quando manipular uma caixa de diálogo.

Tabela USysAddIns

O Microsoft Access 2.0 Gestor de suplementos processará entradas na tabela de USysAddIns de um banco de dados para atualizar as seções [Menu Add-Ins] e [bibliotecas] MSACC20.INI. Isso torna a instalação e desinstalação bibliotecas mais gerenciáveis para usuários. Consulte o manual do capítulo 15 do Microsoft Access "Building Applications" para obter mais informações.

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 88175 - Última Revisão: 12/04/2015 09:17:00 - Revisão: 2.0

Microsoft Access 1.0 Standard Edition, Microsoft Access 1.1 Standard Edition, Microsoft Access 2.0 Standard Edition

  • kbnosurvey kbarchive kbmt kbhowto kbprogramming KB88175 KbMtpt
Comentários