ID do artigo: 114771 - Última revisão: segunda-feira, 20 de outubro de 2003 - Revisão: 3.0

CORRECÇÃO: Disco ou erro de rede com objetos de acesso a dados

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.

Nesta página

Expandir tudo | Recolher tudo

Sintomas

Erro 3043 (erro de disco ou rede) pode resultar quando você executa várias instâncias de um programa do Visual Basic ou executar vários programas e todas as instâncias ou programas executarem acesso a dados no mesmo banco de dados.

Se o programa não fecha explicitamente todos os objetos de acesso de dados (usando db.close, por exemplo), o erro ocorrerá quando a segunda instância do programa tenta trabalhar com um objeto de acesso a dados.

Como Contornar

Feche todos os objetos de acesso de dados (tabelas, dynasets, instantâneos e bancos de dados) explicitamente. Por exemplo, se seu programa tenha alguma das instruções a seguir
   Dim db As database
   Dim ds As dynaset
   Dim sn As snapshot
   Dim tb As table
   Set db = OpenDatabase("<some database file>")
   Set ds = db.CreateDynaset("<some query>")
   Set sn = db.CreateSnapshot("<some query>")
   Set tb = db.OpenTable("<some table name>")
				

Execute as seguintes instruções fechar antes do programa será finalizado:
   tb.close
   ds.close
   sn.close
   db.close
				

Observação: Se você colocar os métodos .Close nos eventos QueryUnload ou Unload, verifique se que você chamar esses eventos antes do programa termina usando a instrução Unload (por exemplo, descarregar Me). Tenha cuidado ao usar a instrução End; ele não invoca os eventos QueryUnload ou Unload.

Situação

Esse bug foi corrigido no Microsoft Visual Basic versão 4.0 para Windows.

Mais Informações

Etapas para reproduzir o problema

  1. Inicie o Visual Basic e abra o projeto VISDATA.MAK localizado no diretório \VB\SAMPLES\VISDATA (ALT, F, O).
  2. No menu ' arquivo ', escolha criar arquivo EXE para criar um executável.
  3. Saia do Visual Basic e execução Gerenciador de arquivos.
  4. Altere diretórios para o diretório \VB\SAMPLES\VISDATA e clique duas vezes em VISDATA.EXE para executar o programa. Repita essa etapa para que duas instâncias do VISDATA estão em execução.
  5. No ambas as instâncias de VISDATA, abra o banco de dados BIBILIO.MDB localizado no diretório do Visual Basic \VB.
  6. Feche uma instância do VISDATA.EXE.
  7. Iniciar outra instância do VISDATA.EXE e tentar abrir o BIBLIO.MDB banco de dados novamente. Você receberá o erro 3043 - "Disco ou erro de rede."

A informação contida neste artigo aplica-se a:
  • Microsoft Visual Basic 3.0 Professional Edition
Palavras-chave: 
kbmt kbbug kbfix KB114771 KbMtpt
Tradução automáticaTradução automática
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: 114771  (http://support.microsoft.com/kb/114771/en-us/ )
Retired KB ArticleAviso de Isenção de Responsabilidade sobre Conteúdo do KB Aposentado
Este artigo trata de produtos para os quais a Microsoft não mais oferece suporte. Por esta razão, este artigo é oferecido "como está" e não será mais atualizado.