Ver Mensaje Individual
  #5  
Antiguo 30-08-2006
Avatar de anghell77
anghell77 anghell77 is offline
Miembro
 
Registrado: may 2006
Posts: 194
Reputación: 19
anghell77 Va por buen camino
Antes que nada, Bienvenido a ClubDelphi.com. Jdvc.

Espero, que dada mi poca experiencia, los demás compañeros puedan mejorar el siguiente código que encontré un día en internet, no puedo dar la dirección porque acabo de dar formato a mi Ordenador y desafortunadamente, olvidé respaldar mis enlaces web.

Pido ayuda a los demás compañeros, pues aunque ésta función respalda la base de datos en una dirección asignada en tiempo de construcción, me resultaba una falta de información.

Me explico, yo entraba al Sistema, realizaba movimientos como actualizaciones, Altas, etc, y al momento de respaldar, lo hacía correctamente, hasta antes de dichos movimientos que acababa de hacer; por lo tanto era necesario entrar nuevamente al sistema y ejecutar otra vez en un BitBtn la función de respaldo, y sólo así me respaldaba los últimos movimientos...

A ver si ésta función se ajusta a lo que pide el compañero. Yo la empleé para Paradox, trabajando en Delphi7.

Añadiendo, ShellApi al Uses del Formulario donde se ejecutará el respaldo.

Código Delphi [-]
procedure TForm1.RespaldoClick(Sender: TObject);
function Respaldo_BD(Origen,Destino : String) :
   LongInt;
   var
     F : TShFileOpStruct;
     sOrigen, sDestino : String;
   begin
     Result := 0;
     sOrigen := Origen + #0;
     sDestino := Destino + #0;

     with F do
     begin
       Wnd   := Application.Handle;
       wFunc := FO_COPY;
       pFrom := @sOrigen[1];
       pTo   := @sDestino[1];
       fFlags := FOF_ALLOWUNDO or FOF_NOCONFIRMATION
     end;
     Result := ShFileOperation(F);
 end;
begin
  Respaldo_BD('c:\CarpetaOrigen\Base_Datos\Nombre_Base_Datos\*.*', 'c:\CarpetaDestino\RESPALDO_BaseDatos\Nombre_Base_Datos');
end;

Espero y que a partir de ella vengan más ideas.

{Saludos}
__________________
"...Ayer Bastaba un Sueño..."
Responder Con Cita