FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Hola dmartinezn.
No utilizo mysql por lo que no puedo probar si los parámetros son correctos. Según entiendo de tu primer mensaje, estos no son enviados por la aplicación sino que se determinan dentro del archivo backup.bat. Yo llamaría a Backup.bat con ShellExecute de este modo: Código:
{ char cmd[1024]; GetEnvironmentVariable("COMSPEC", cmd, sizeof(cmd)); ShellExecute(Handle, "open", cmd, " /K D:\\Damian\\web server\\mysql\\bin\\Backup.bat", NULL, SW_HIDE); } Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 14-04-2012 a las 00:22:58. |
#2
|
||||
|
||||
Hola dmartinezn.
Como te dije antes no uso mysql, pero el código de roman, que sin dudas debe funcionar correctamente, creo que deberías traducirlo más o menos así: Código:
void Backup(char *User, char *Password, char *Database, char *OutputDir) { AnsiString OutputFile = IncludeTrailingPathDelimiter(OutputDir) + Database + '_' + FormatDateTime("ddmmyy", Now()) + ".sql"; TVarRec vr[] = {User,Password,Database,OutputFile}; ShellExecute(0, "open", "C:\\Program Files\\MySQL\\MySQL Server 5.1\\bin\\mysqldump.exe", Format("-u%s -p%s -r %s %s",vr,4).c_str(), NULL, SW_HIDE); } Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 14-04-2012 a las 04:19:25. Razón: corregir ortografía |
#3
|
||||
|
||||
¡Ah! ¡Bien!
Je, je. Yo como no manejo C y lo único que tengo a la mano es Dev-C++ creé esta función. Menos eficiente que la de ecfisa pero no me puedo quedar con las ganas de ponerla luego del rato que pasé haciendola Código:
#include <time.h> #include <shellapi.h> void backup(char *user, char *password, char *database, char *outputdir) { /* Obtenemos la fecha actual */ time_t t = time(NULL); struct tm *tmp = localtime(&t); char fecha[9]; strftime(fecha, sizeof(fecha), "%d%m%Y", tmp); char outputfile[MAX_PATH]; char args[MAX_PATH]; /* Calculamos el nombre del archivo de salida */ sprintf(outputfile, "%s\\%s_%s.sql", outputdir, database, fecha); /* Calculamos los parámetros */ sprintf(args, "-u%s -p%s %s -r %s", user, password, database, outputfile); /* Hacemos el respaldo */ ShellExecute( 0, "open", "C:\\Program Files\\MySQL\\MySQL Server 5.1\\bin\\mysqldump.exe", args, "", SW_HIDE); } // Saludos |
#4
|
|||
|
|||
Saludos y muchas gracias por la ayuda.
He probado con cada una de las variantes que ustedes me han dado y no realiza el backup,en esta ocasion el codigo corre perfectamente pero no hace nada. |
#5
|
||||
|
||||
Hola dmartinezn.
Veo que en tu primer mensaje envias la cadena: Cita:
Cita:
Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#6
|
||||
|
||||
dmartinezn, el último código que puse lo probé y funcionó bien. Toma en cuenta que al llamar la función, casi seguro que tienes que especificar el directorio de salida usando dobles \\ y no una sola.
ecfisa, ambas formas de poner los parámetros son correctas. Es algo muy común en unix. // Saludos |
#7
|
||||
|
||||
Cita:
Gracias por la aclaración. Entonces con toda seguridad se trata de problemas en la definición de la ruta, ya que al igual que vos comprobé en la traducción del mensaje #12 los parámetros enviados por ShellExecute (mediante otro ejecutable) y son correctos. La función del mensaje #13 no la probé por que dí por sentado que funcionaba correctamente. Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Backup y Restore desde delphi 7 & mysql | MRS@N | MySQL | 3 | 06-05-2012 02:57:28 |
backup Mysql desde c++ builde 6 | dmartinezn | MySQL | 1 | 22-01-2012 13:41:58 |
Problema para ejecutar una aplicacion con mysql desde una pc cliente | karaoke | MySQL | 4 | 23-01-2008 18:25:58 |
Ejecutar un Backup | sierraja | Firebird e Interbase | 11 | 18-09-2006 17:33:07 |
Como ejecutar un archivo .chm desde C++ Builder 5? | mapch | C++ Builder | 1 | 13-08-2004 07:01:47 |
|