Ver la Versión Completa : Varios backups
molinero1
09-05-2007, 18:42:24
Tengo varias bases de datos, que son archivos .gdb y lo que quiero es hacer un backup de cada una, con un for lo consigo, pero me gustaría que hasta que no termina de crearse el primer .bck, que no empiece a crear el segundo backup. Hay alguna forma de averiguar cuando esta del todo creado el primer backup?
No me gustaría poner ningun sleep o timer, ya que ahora uso bases de datos de 100 mb y me gustaría que el programa fuera capaz de hacerlo con bases de datos de mas de 1 GB, sin que pierda eficiencia. Gracias.
supongo que la copia se realiza llamando a gfix u otro utilitario con ShellExecute, si es así, busca en el foro por runAndWait.
En caso contrario, explica lo que tienes dentro de es bucle for.
Saludos
molinero1
10-05-2007, 10:20:40
Dentro del for tengo unas lineas para llenar un .bat y luego ejecutarlo, en cada pasada, las lineas para llenar el .bat cambian, y me gustaria que entre pasada y pasada se esperara a terminar el backup.
molinero1
10-05-2007, 10:48:39
Código Delphi:
procedure ExecuteProcessAndWait(ProcessName: String);
var
StartInfo: TStartupInfo;
ProcInfo: TProcessInformation;
begin
FillChar(StartInfo, SizeOf(StartInfo), 0);
StartInfo.cb := SizeOf(StartInfo);
if CreateProcess(PChar(ProcessName), nil, nil, nil, false, 0, nil, nil, StartInfo, ProcInfo) then
WaitForSingleObject(ProcInfo.hProcess, INFINITE);
end;
Se supone que debo utilizar eso, pero no se donde poner el .bat que quiero usar dentro de ese trozo de código, si alguien me puede ayudar, gracias.
Parece una versión distinta de la que yo hablaba, pero en fin, espero que funcione
ExecuteProcessAndWait('c:\mibat.bat');
saludos
molinero1
10-05-2007, 11:57:57
Muchas gracias, lo he estado provando en un form a parte, y me iba tal y como yo quería, es mas, ahora que me he fijado, solo tengo que cambiar el winexec por el ExecuteProcessAndWait. Muchas gracias.
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.