Ver Mensaje Individual
  #3 (permalink)  
Antiguo 04/08/2008, 16:35
zeroyevi
 
Fecha de Ingreso: septiembre-2007
Mensajes: 54
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Como hacer un backup en vb 6.0

ten cuidado muchas veces con crear backup el usuario te puede llenar de de muchos access te lo digo por experiencia propia , si es para que alla un informe de datos es mejor que los despiegues ...

experiencia propia " no hagas que los usuarios creen muchos respaldo *.mdb despues no saben cual es el ultimo para entregarte un informe" o importarlos a una base




'-----------------------------------------

usuario = get_Usuario
rutaCarpeta = ComboUnidad
x_usuario = UCase(Trim(txtnombrebk.Text))

SourceFile = ("C:\xxxx\xxxx.mdb")
DestinationFile = rutaCarpeta & "\" & x_usuario & "" & usuario & "-BACKUP_JUNAEB.mdb"




Ret = CopyFileEx(Trim$(SourceFile), Trim$(DestinationFile), AddressOf CopiarArchivo, _
ByVal 0&, Cancelar, COPY_FILE_RESTARTABLE)

'-------------------

copia este modulo tal cual

'-----------------

Option Explicit

'Constantes para el Api CopyFileEx
'*************************************
Public Const PROGRESS_CANCEL = 1
Public Const PROGRESS_CONTINUE = 0
Public Const PROGRESS_QUIET = 3
Public Const PROGRESS_STOP = 2
Public Const COPY_FILE_FAIL_IF_EXISTS = &H1
Public Const COPY_FILE_RESTARTABLE = &H2

'Declaración Api CopyFileEx para copiar archivos con progreso
Public Declare Function CopyFileEx Lib "kernel32.dll" Alias "CopyFileExA" ( _
ByVal lpExistingFileName As String, _
ByVal lpNewFileName As String, _
ByVal lpProgressRoutine As Long, _
lpData As Any, _
ByRef pbCancel As Long, _
ByVal dwCopyFlags As Long) As Long

' Flag para cancelar la copiar ( 0 copia, 1 cancela )
Public Cancelar As Long

'función para copiar
'''''''''''''''''''''''''''''''''''''''''''''''''' ''''''''''''''''''
Public Function CopiarArchivo(ByVal TotalFileSize As Currency, ByVal _
TotalBytesTransferred As Currency, _
ByVal StreamSize As Currency, _
ByVal StreamBytesTransferred As Currency, _
ByVal dwStreamNumber As Long, _
ByVal dwCallbackReason As Long, _
ByVal hSourceFile As Long, _
ByVal hDestinationFile As Long, _
ByVal lpData As Long) As Long


'mostramos el progreso en el label
Form1.ProgressBar1.Value = CStr(Int((TotalBytesTransferred * 10000) / _
(TotalFileSize * 10000) * 100))

DoEvents
'continuamos la copia del fichero
CopiarArchivo = PROGRESS_CONTINUE
End Function

'si quieres les sacas el ProgressBar1 que puse