[C con Clase] eliminar aplicación después de ejecutarse

Salvador Pozo salvador en conclase.net
Vie Feb 8 14:08:30 CET 2013


Hola:

Hay algunos métodos, pero ninguno tan simple como el que funciona en Linux. 

En este enlace explican unos cuantos:
http://www.catch22.net/tuts/self-deleting-executables

Este, por ejemplo, borra el ejecutable la siguiente vez que se inicie Windows:

----8<------
#include <windows.h>

using namespace std;

int main(int argc, char **argv)
{
    MoveFileEx(argv[0], 0, MOVEFILE_DELAY_UNTIL_REBOOT);
    return 0;
}
----8<------

No es lo que necesitas, seguramente, ya que el borrado se difiere, y el programa puede ejecutarse de nuevo, hasta que se inicie Windows.

Un método que puede funcionar como deseas es crear un hilo secundario, esperar a que el programa termine, y que el hilo borre el fichero. No sé exactamente cómo se hace esto, pero intentaré hacerlo. Ya os contaré.

Hasta pronto.

-- 
Salvador Pozo (Administrador)
mailto:salvador en conclase.net


Más información sobre la lista de distribución Cconclase