Supprimer fichier

Résolu
gagah1 Messages postés 509 Date d'inscription samedi 28 juin 2003 Statut Membre Dernière intervention 3 août 2010 - 4 janv. 2006 à 17:01
CoyoteVsBeepBeep Messages postés 41 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 3 mars 2006 - 4 janv. 2006 à 17:51
Salut!
Comment fait-on pour qu'un fichier executable supprime lui-même?
J'ai déjà éssayé DeleteFile(), SHFileOperation() sans succès.
Merci.

5 réponses

gagah1 Messages postés 509 Date d'inscription samedi 28 juin 2003 Statut Membre Dernière intervention 3 août 2010
4 janv. 2006 à 17:40
Merci, j'ai trouvé la solution.
http://www.cppfrance.com/forum.v2.aspx?ID=293280
3
deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 2
4 janv. 2006 à 17:17
Yop :D,



Pour qu'il se supprime lui même???? ben c'est impossible. Pour que un
fichier soit supprimable il faut que aucun processus ne l'utilise. Et
vu que ton programme est lancé lorsque celui ci demande de supprimer
sont propre fichier et bien ...erreur.



++ALL
0
shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013
4 janv. 2006 à 17:26
o pire tu copy ton programme dans un autre endroit, tu crée une valeur du registre = a 1 et tu ShellExecute ton prog que tu a copié, en debut de prog tu met que si valeur = 1 on delete le fichier, il n'est plus visible par l'user mais le prob c'est qu'il est ailleurs, ca par exemple c'est le principe utilisé par les virus, mais bon supprimer concretement, c'est impossible si cela est lancé
.
0
gagah1 Messages postés 509 Date d'inscription samedi 28 juin 2003 Statut Membre Dernière intervention 3 août 2010
4 janv. 2006 à 17:28
Comment fait-on alors les programmeurs pros pour supprimer le fichier de désinstallation lui-même à partir de ce même fichier?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
CoyoteVsBeepBeep Messages postés 41 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 3 mars 2006
4 janv. 2006 à 17:51
un des solutions, c'est que ton exe creé un fichier clean.bat dans lequel tu mets:

REM temporisation avec un for le temps de finir ton exe genre 1s
xxx
REM delete de l'exe
del ton_fichier.exe
REM le bat peut s'auto effacer
del clean.bat

puis dans ton exe, tu lance clean.bat (spawn) sans syncro (P_NOWAIT) et tu fais un exit(0) pour quitter le plus rapidement ton programme.
derriere, le bat va faire le menage pour toi et s'auto effacer.
0
Rejoignez-nous