Uma mensagem "Erro não especificado" Erro ao criar mais de 64 conexões para um banco de dados do Access em um processo

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: 830133
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Sintomas
Se você se conectar a um banco de dados Microsoft Access e, em seguida, você criar mais de 64 conexões em um processo, você pode receber uma das seguintes mensagens de erro:
  • No Microsoft Visual Studio .NET:
    Erro não especificado
  • No Microsoft Visual Basic 6.0, se você usar o ActiveX Data Objects (ADO):
    Tempo de execução-erro de '-2147467259 (80004005)': Erro não especificado
Situação
Esse comportamento é por design.
Mais Informações

Etapas para reproduzir o comportamento

  1. Inicie o Visual Studio NET..
  2. Use o Microsoft Visual translation from VPE for Csharp .NET ou Microsoft Visual Basic .NET para criar um novo projeto Console Application. Nomeie o projeto AccessApplication. Por padrão, Class1.cs (no Visual translation from VPE for Csharp. NET) ou Module1.vb (em Visual Basic. NET) é criado.
  3. Em Class1.cs ou no Module1.vb, substitua o código existente com o código a seguir.

    Observação Para usar este código de exemplo, altere o caminho de fonte de dados para o caminho de qualquer arquivo de banco de dados Microsoft Access que está no seu computador.

    translation from VPE for Csharp visual código .NET
    using System;using System.Data.OleDb;namespace AccessApplication{	/// <summary>	/// Summary description for Class1.	/// </summary>  class Class1  {    /// <summary>    /// The main entry point for the application.    /// </summary>    [STAThread]    static void Main(string[] args)    {      //      // TODO: Add code to start application here      //      int intCount;      int intMaxConnections;      string strConnection;      intMaxConnections = 65;      object[] objArray = new object[intMaxConnections];      strConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" +         "Data Source=C:\\Program Files\\Microsoft Office\\Office10\\Samples\\Northwind.mdb;";			              Console.WriteLine("Starting test...");			      for (intCount=0;intCount<intMaxConnections;intCount++)      {        try        {          OleDbConnection myConnection = new OleDbConnection(strConnection);          myConnection.Open();          Console.WriteLine("Open connection is " + intCount);          objArray[intCount] = myConnection;        }        catch(Exception excpt)        {          Console.WriteLine("Exception : " + excpt.Message.ToString());        }      }    }          }}
    Código do Visual Basic .NET
    Imports System.Data.OleDbModule Module1  Sub Main()    Dim intCount As Integer    Dim intMaxConnections As Integer    Dim strConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" _        & "Data Source=C:\Program Files\Microsoft " _        & "Office\Office10\Samples\Northwind.mdb;"    intMaxConnections = 65    Dim IntArray(intMaxConnections) As Object    Console.WriteLine("Starting test...")    For intCount = 0 To intMaxConnections      Try        Dim objConnection As New OleDbConnection(strConnection)        objConnection.Open()        Console.WriteLine("Open connection is " & intCount)        IntArray(intCount) = objConnection      Catch excpt As Exception        Console.WriteLine("Exception " + excpt.Message.ToString())      End Try    Next  End SubEnd Module
  4. No menu Debug , clique em Iniciar .
Referências
Para obter mais informações sobre como abrir um banco de dados do Access usando o ADO, visite o seguinte site da Web Microsoft Developer Network (MSDN):

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 830133 - Última Revisão: 12/08/2015 05:00:32 - Revisão: 3.2

Microsoft Access 2002 Standard Edition, Microsoft Access 2000 Standard Edition, Microsoft Access 97 Standard Edition

  • kbnosurvey kbarchive kbmt kberrmsg kbprb kbdatabase KB830133 KbMtpt
Comentários