Ver Mensaje Individual
  #1  
Antiguo 18-07-2005
quake2420 quake2420 is offline
Miembro
 
Registrado: abr 2004
Posts: 28
Reputación: 0
quake2420 Va por buen camino
Problemas con la llamada a winexec

Hola compañeros del foro, mi duda es la siguiente:
Estoy haciendo un programa y lo que quiero es cada vez que guardo unos datos me guardo en la carpeta donde guardo esos datos un archivo .zip.
Como lo tengo hecho ahora lo que hago primeo es copiar todos los archivos a comprimir a la carpeta donde esta el ejecutable del 7zip, una vez copiados los archivos a esa carpeta, lo que hago es ejecutar el winexec que lo que hace es cargarme un archivo .bat, el cual, lo que hace es situarme en el directorio donde esta el ejecutable del zip y luego crearme el zip, una vez que he ejecutado el winexec, ejecuto un sleep para que no tenga problemas de ejecucion.
El problema es que la primera vez que ejecuto el programa la llamada winexec no hace nada pero las restantes veces que lo ejecuto lo hace sin problema:
Las lineas que tengo en el programa son las siguientes:
Código:
	
rutaT:=directorio + '\';
//Creacion del archivo zip donde se guarda
//los archivos wpa, xml y dtd
copyfile(PChar(rutaT + 'contenido.xml'),
PChar(rutazp + 'contenido.xml'),existe);
copyfile(PChar(rutaT + 'estilo.xml'),
PChar(rutazp + 'estilo.xml'),existe);
copyfile(PChar(rutaT + 'nuevo.dtd'),
PChar(rutazp + 'nuevo.dtd'),existe);
copyfile(PChar(rutaT + nombreA + '.wpa'),
PChar(rutazp + nombreA + '.wpa'),existe);
rutazp1:='"'+rutazp+'"';
zipf:=nombreA + '.wzp';
wpaf:=nombreA+'.wpa';
diractual:=SetCurrentDir(rutazp);
winexec(Pchar('crearzip.bat ' + rutazp1 + ' ' + zipf + ' '
+ wpaf),SW_hide);
sleep(1000);
copyfile(PChar(rutazp + zipf),PChar(rutaT + '\' + zipf),existe);
deletefile(PChar(rutazp + 'contenido.xml'));
deletefile(PChar(rutazp + 'estilo.xml'));
deletefile(PChar(rutazp + 'nuevo.dtd'));
deletefile(PChar(rutazp + wpaf));
deletefile(PChar(rutazp + zipf));


Gracias a todos por adelantado

Última edición por quake2420 fecha: 18-07-2005 a las 12:22:24.
Responder Con Cita