Creé un SFX para extraer algunos archivos. Después de la extracción, necesito que se elimine el archivo SFX. Por lo que he visto, WinRar no ofrece esa opción. Así que pensé en ejecutar un comando DOS -prompt (como bat).
Este es mi código hasta ahora (no funciona):
SETUP=cmd /c del /f /q "file-to-delete"
Abre el cmd, parpadea y luego se cierra ...
Alguien con un problema similar: http://www.msfn.org/board/topic/34506-sfx-remove-file-after-extraction/
Sí, "SETUP =" es una directriz winrar y permite ejecutar un programa específico después de la extracción automática de SFX, que puede ser "Setup.exe" o "Install.exe" o "script.bat", etc. camino está bien, simplemente no puedo encontrar la manera de hacerlo funcionar
—
Rafael Vidal
Su problema es que el SFX todavía se está ejecutando, por lo que si intenta eliminarlo, solo terminará con un error de acceso denegado.
—
Karan
Karan, ese no es el caso. Winrar tiene directivas específicas para ser utilizadas ANTES, DURANTE o DESPUÉS del proceso de extracción. En este caso, la directiva SETUP se supera en el ende (una vez que SFX ha finalizado). Por lo tanto, no hay problema para eliminar el archivo. Por cierto, foxidrive tiene la solución exacta. Gracias por cierto.
—
Rafael Vidal
Hmm, me pregunto por qué
—
Karan
cmd
no funciona pero cmd.exe
funciona (con o sin la ruta completa, la primera es la que %comspec%
contiene) Entonces, todo lo que tenía que hacer era cambiar su código a SETUP=cmd.exe /c del /f /q "name-of-sfx"
.
SETUP=
una directiva WinRar? Asegúrese de que se incluya la ruta completa al archivo.