RE:Compactar base para backup
Hola, este codigo permite compactar una base de datos access en Visual Basic 6.0 con ADO
La respuesta la encontre en el sitio http://guille.costasol.net/indice.asp
es una muy buena pagina de consulta para desarrolladores de VB.
A mi el codigo me funciono correctamente, porque lo tuve que usar en un trabajo que hice.
Para compactar bases de datos usando ADO, tenes que crear una referencia a Microsoft Jet and Replication Objects 2.6 Library (JRO) (o la version de objetos que estes usando)
Espero haber solucionado tu problema.Suerte y Saludos.
Private Sub cmdCompactar_Click()
\' Compactar una base de datos con ADO
Dim sDBTmp As String
Dim je As JRO.JetEngine
\'
On Error GoTo ErrCompactar
\'
Set je = New JRO.JetEngine
\'
\' Crear un nombre \"medio\" aleatorio
sDBTmp = \"DBT_\" & Format$(Minute(Now), \"00\") & Format$(Second(Now), \"00\") & \".mdb\"
\' Asegurarnos de que no existe una base con el nombre temporal
If Len(Dir$(sDBTmp)) Then
Kill sDBTmp
End If
\'
lblInfo.Caption = \" Compactando la base de datos...\"
lblInfo.Refresh
\'
\' Compactar la base de datos
je.CompactDatabase \"Data Source=\" & txtNombreBase.Text & \";\", _
\"Data Source=\" & sDBTmp & \";\"
\'
\' Eliminar la base de datos original
Kill txtNombreBase.Text
\'
\' Renombrar la base temporal con el