/ / Comment Windows supprime-t-il les fichiers verrouillés lors du prochain redémarrage lorsque vous désinstallez un programme? - windows, delete-file, filelock

Comment Windows supprime-t-il les fichiers verrouillés lors du prochain redémarrage lorsque vous désinstallez un programme? - windows, delete-file, filelock

Comment Windows supprime-t-il les fichiers verrouillés lors du prochain redémarrage lorsque vous désinstallez un programme? Peut-être avec une sorte de processus prévu?

Réponses:

4 pour la réponse № 1

Le processus de désinstallation utilise MoveFileEx avec le MOVEFILE_DELAY_UNTIL_REBOOT ensemble d’indicateurs indiquant que l’opération ne devrait pas se produire avant le redémarrage. lpNewFileName Le paramètre NULL indique que le fichier doit être supprimé:

Si dwFlags spécifie MOVEFILE_DELAY_UNTIL_REBOOTet lpNewFileName vaut NULL, MoveFileEx enregistre le fichier lpExistingFileName à supprimer au redémarrage du système. Si lpExistingFileName fait référence à un répertoire, le système ne le supprime au redémarrage que s'il est vide.

L'info sur MOVEFILE_DELAY_UNTIL_REBOOT dit:

MOVEFILE_DELAY_UNTIL_REBOOT

Le système ne déplace pas le fichier tant que lele système d'exploitation est redémarré. Le système déplace le fichier immédiatement après l'exécution de AUTOCHK, mais avant la création de fichiers de pagination. Par conséquent, ce paramètre permet à la fonction de supprimer les fichiers de pagination des démarrages précédents.

La fonction ci-dessus écrit une entrée dans le registre qui est automatiquement traitée lors du démarrage:

La fonction stocke les emplacements des fichiers à renommer au redémarrage dans la valeur de registre suivante:

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerPendingFileRenameOperations