ID do artigo: 186304 - Última revisão: terça-feira, 23 de janeiro de 2007 - Revisão: 4.3

ACC97: Como ler arquivos .LDB

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.
Expandir tudo | Recolher tudo

Sumário

Avançadas: Requer especialista de codificação, interoperabilidade e habilidades de multiusuário.

No Microsoft Access 97, o arquivo .ldb é usado para determinar quais registros estão bloqueados em um banco de dados compartilhado e por quem. Ela é criada automaticamente quando qualquer usuário abre um banco de dados e excluídos quando o último usuário fecha o banco de dados. Enquanto o arquivo .ldb não pode ser aberto diretamente para leitura, a Microsoft fornece uma biblioteca de vínculo dinâmico que expõe as funções que você pode usar para ler o arquivo .ldb. Este artigo contém código de exemplo para usar a DLL para ler um arquivo .ldb.

Microsoft fornece exemplos de programação apenas para ilustração, sem garantia expressa ou implícita. Isso inclui, mas não está limitado a, garantias implícitas de comercialização ou adequação para uma finalidade específica. Este artigo presume que você está familiarizados com a linguagem de programação que está sendo demonstrada e com as ferramentas que são usadas para criar e depurar procedimentos. Engenheiros de suporte podem ajudar a explicar a funcionalidade de um determinado procedimento, mas eles não modificarão esses exemplos para fornecer funcionalidades adicionais ou construir procedimentos para atender às suas necessidades.

Mais Informações

A biblioteca de vínculo dinâmico Msldbusr.dll contém funções que permitem que você faça o seguinte:
  • Exiba todos os computadores que fizeram logon em um banco de dados desde que o arquivo .ldb foi criado.
  • Exiba somente os computadores que estão conectados em um banco de dados.
  • Exibir computadores que estão causando um arquivo de banco de dados para ser corrompido.
  • Exiba a contagem de computadores conectado a um banco de dados.
Msldbusr.dll é parte do arquivo Jetutils.exe. Para obter mais informações sobre Jetutils.exe ou Msldbusr.dll e seu uso, consulte o seguinte artigo na Base de dados de Conhecimento da Microsoft:
176670  (http://support.microsoft.com/kb/176670/EN-US/ ) ACC: Microsoft Jet Utilities disponíveis no Centro de download
O exemplo a seguir o código de aplicativos do Visual Basic for chama a função LDBUser_GetUsers de Msldbusr.dll para imprimir uma lista de computadores atualmente conectados a um banco de dados na janela Verificação imediata.

Após instalar o Msldbusr.dll no C:\Windows\System (Microsoft Windows 95) ou na pasta C:\Winnt\System32 (Microsoft Windows NT), execute estas etapas para criar e usar a função de exemplo:
  1. Criar um novo módulo no Microsoft Access 97
  2. Digite ou cole a instrução de declaração de função seguinte na seção declarações do módulo:
          Declare Function LDBUser_GetUsers Lib "MSLDBUSR.DLL" _
          (lpszUserBuffer() As String, ByVal lpszFilename As String, _
          ByVal nOptions As Long) As Integer
    					
  3. Digite ou cole a seguinte função de exemplo no módulo:
          Public Function GetUsers(Optional StrDbPath As String)
    
             ReDim lpszUserBuffer(1) As String
             Dim intLooper As Integer
             Dim Cusers As Long
             Dim strMsgBox As String
    
             On Error GoTo Err_GetUsers
    
             ' Check to see if a database path was passed
             ' to the function. If the argument was not used,
             ' assume that we're to investigate the .ldb
             ' of the current database.
             If IsMissing(StrDbPath) Or StrDbPath = "" Then
                  StrDbPath = CurrentDb.Name
             End If
    
             ' Set Cusers to the number of computers currently connected
             ' to the database. Insert computer information into the
             ' lpszUserBuffer array.
    
             ' Arguments of LdbUser_Get Users:
             ' 1 =   All users who have logged in since the LDB file was
             ' created
             ' 2 =   Only users who are currently logged in
             ' 4 =   Only users who are causing the database file to be
             ' corrupted
             ' 8 =   Just return the count of users
    
             Cusers = LDBUser_GetUsers(lpszUserBuffer(), StrDbPath, 2)
    
             ' Print possible errors returned by the function.
             Select Case Cusers
                  Case -1
                       strMsgBox = "Can't open the LDB file"
                  Case -2
                       strMsgBox = "No user connected"
                  Case -3
                       strMsgBox = "Can't Create an Array"
                  Case -4
                       strMsgBox = "Can't redimension array"
                  Case -5
                       strMsgBox = "Invalid argument passed"
                  Case -6
                       strMsgBox = "Memory allocation error"
                  Case -7
                       strMsgBox = "Bad index"
                  Case -8
                       strMsgBox = "Out of memory"
                  Case -9
                       strMsgBox = "Invalid Argument"
                  Case -10
                       strMsgBox = "LDB is suspected as corrupted"
                  Case -11
                       strMsgBox = "Invalid argument"
                  Case -12
                       strMsgBox = "Unable to read MDB file"
                  Case -13
                       strMsgBox = "Can't open the MDB file"
                  Case -14
                       strMsgBox = "Can't find the LDB file"
             End Select
    
             If Not IsEmpty(strMsgBox) And strMsgBox <> "" Then
                  MsgBox strMsgBox, vbCritical, "Error"
                  Exit Function
             End If
    
             ' Print computer names to Debug window.
             For intLooper = 0 To Cusers - 1
                  Debug.Print "User"; intLooper + 1; ":"; _
                  lpszUserBuffer(intLooper)
             Next
    
        Exit_GetUsers:
             Exit Function
        Err_GetUsers:
             MsgBox Err.Description
             Resume Exit_GetUsers
    
        End Function
    					
  4. Para testar essa função, digite a seguinte linha na janela Verificação imediata e, em seguida, pressione ENTER:
    ?getusers()
    					

Referências

Para obter mais informações sobre o Msldbusr.dll, analisar o arquivo Msldbusr.doc encontrado no Jetutils.exe.

A informação contida neste artigo aplica-se a:
  • Microsoft Access 97 Standard Edition
Palavras-chave: 
kbmt kbhowto kbprogramming KB186304 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: 186304  (http://support.microsoft.com/kb/186304/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.