Usuário com melhor resposta
Compactar e ou reparar BD Access no VB.NET 2010

Pergunta
-
Bom dia a todos!
Coloquei a rotina de compactação de BD na minha aplicação, só que esta apresentando erros, como segue:
Public Sub CompactRepairAccessDB(ByVal sDBFILE As String, Optional ByVal sPASSWORD As String = "") Dim sDBPATH As String, sDBNAME As String, sDB As String, sDBtmp As String sDBNAME = sDBFILE 'extrapulate the file name Do While InStr(1, sDBNAME, "\") > 0 sDBNAME = Right(sDBNAME, Len(sDBNAME) - InStr(1, sDBNAME, "\")) Loop 'get the path name only sDBPATH = Left(sDBFILE, Len(sDBFILE) - Len(sDBNAME)) sDB = sDBPATH & sDBNAME sDBtmp = sDBPATH & "tmp" & sDBNAME 'Call the statement to execute compact and repair... If sPASSWORD > "" Then Call DBEngine.CompactDatabase(sDB, sDBtmp, dbLangGeneral, , ";pwd=" & sPASSWORD) Else Call DBEngine.CompactDatabase(sDB, sDBtmp) End If 'wait for the app to finish DoEvents() 'remove the uncompressed original Kill(sDB) 'rename the compressed file to the original to restore for other functions Name sDBtmp As sDB End Sub
Como corrigí-los, por favor peço ajuda!
Obrigado
Dilson
Dilson J. Hasselmann Desenvolvedor VB.NET
Respostas
-
Dilson,
Dê onde você tirou esse DBEngine? Você pegou o exemplo em algum site? Provavelmente é alguma biblioteca que alguém construiu para fazer essa operação e você deve ter esquecido de baixar e referenciar essa biblioteca... Você poderia postar uma referência de onde você obteve esse código?
André Alves de Lima
Microsoft MVP - Client App Dev
Visite o meu site: http://www.andrealveslima.com.br
Me siga no Twitter: @andrealveslima- Sugerido como Resposta AndreAlvesLimaModerator terça-feira, 14 de junho de 2011 12:54
- Marcado como Resposta AndreAlvesLimaModerator segunda-feira, 27 de junho de 2011 17:13
Todas as Respostas
-
Bom dia a todos!
Coloquei a rotina de compactação de BD na minha aplicação, só que esta apresentando erros, como segue:
Public Sub CompactRepairAccessDB(ByVal sDBFILE As String, Optional ByVal sPASSWORD As String = "") Dim sDBPATH As String, sDBNAME As String, sDB As String, sDBtmp As String sDBNAME = sDBFILE 'extrapulate the file name Do While InStr(1, sDBNAME, "\") > 0 sDBNAME = Right(sDBNAME, Len(sDBNAME) - InStr(1, sDBNAME, "\")) Loop 'get the path name only sDBPATH = Left(sDBFILE, Len(sDBFILE) - Len(sDBNAME)) sDB = sDBPATH & sDBNAME sDBtmp = sDBPATH & "tmp" & sDBNAME 'Call the statement to execute compact and repair... If sPASSWORD > "" Then Call DBEngine.CompactDatabase(sDB, sDBtmp, dbLangGeneral, , ";pwd=" & sPASSWORD) Else Call DBEngine.CompactDatabase(sDB, sDBtmp) End If 'wait for the app to finish DoEvents() 'remove the uncompressed original Kill(sDB) 'rename the compressed file to the original to restore for other functions Name sDBtmp As sDB End Sub
"DBEngine" is not declared. It may be inaccessible due to its protection level.
---------
Generate method stub for "DBEngine" in "Minha Aplicação".Como corrigí-los, por favor peço ajuda!
Obrigado
Dilson
Dilson J. Hasselmann Desenvolvedor VB.NET
Dilson J. Hasselmann Desenvolvedor VB.NET -
Dilson,
Dê onde você tirou esse DBEngine? Você pegou o exemplo em algum site? Provavelmente é alguma biblioteca que alguém construiu para fazer essa operação e você deve ter esquecido de baixar e referenciar essa biblioteca... Você poderia postar uma referência de onde você obteve esse código?
André Alves de Lima
Microsoft MVP - Client App Dev
Visite o meu site: http://www.andrealveslima.com.br
Me siga no Twitter: @andrealveslima- Sugerido como Resposta AndreAlvesLimaModerator terça-feira, 14 de junho de 2011 12:54
- Marcado como Resposta AndreAlvesLimaModerator segunda-feira, 27 de junho de 2011 17:13