Ver Mensaje Individual
  #1  
Antiguo 13-04-2012
dmartinezn dmartinezn is offline
Miembro
 
Registrado: ene 2012
Ubicación: Cuba - Venezuela
Posts: 38
Reputación: 0
dmartinezn Va por buen camino
Ejecutar .bat de un backup mysql desde c++ builder 6 ó XE

Saludos a todos
Estoy tratando de hacer un backup de una BD mysql, para ello cree un .bat con el siguiente código:
Código:
set FECHA=%date%
set FECHA=%FECHA:/=%
set FECHA=%FECHA: =%
set FECHA=%FECHA::=%
set FECHA=%FECHA:,=%
mysqldump.exe --opt --password=damian --user=damian test> D:\backups\Backup_%FECHA%.sql
Cuando le doy doble clic al .bat (Backup.bat) me genera el backup perfectamente por fechas como lo quiero (Backup_13042012.sql). Ahora lo que quiero lograr es ejecutar ese .bat (Backup.bat) desde c++, pero con el código que lo hago me genera el .sql (Backup_13042012.sql) vacío, no se si será problema del código que utilizo o que desde c++ no podría ejecutar el mysqldump.exe que se encuentra dentro del Backup.bat. Acá les dejo las 2 formas como he tratado de hacerlo y en ambas me genera el .sql vacío.
Saludos y espero que puedan corregirme que estoy haciendo mal.
Código:
String Destino= ExtractFilePath(Application->ExeName)+"web server\\mysql\\bin\\Backup.bat";
   SHELLEXECUTEINFO lpExecInfo;
   memset(&lpExecInfo, 0, sizeof(SHELLEXECUTEINFO));
   lpExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
   lpExecInfo.lpFile = Destino.c_str();
   lpExecInfo.lpParameters = 0;
   lpExecInfo.lpDirectory = 0;
   lpExecInfo.lpVerb = 0;
   lpExecInfo.nShow = SW_NORMAL;
   lpExecInfo.fMask = 0;
   ShellExecuteEx(&lpExecInfo);
   String Dia = Date();
   ShowMessage("La salva de la BD fue creada satisfactoriamente con la Fecha " + Dia);
Código:
ShellExecuteA(NULL,"open","D:\\Damian\\web server\\mysql\\bin\\Backup.bat",NULL,"",SW_SHOWNORMAL);
Tambien he probado utilizando ShellExecute en ves de ShellExecuteA
Responder Con Cita