Windows : impossible de déplacer un dossier — identifier et fermer le processus qui verrouille le fichier (Resource Monitor, Sysinternals, PowerShell)

Erreur Windows « Action can’t be completed because the folder or a file in it is open in another program » ? Voici une méthode fiable pour identifier immédiatement le programme qui verrouille votre dossier et le fermer proprement — sans redémarrer et sans “attendre que ça passe”.

Sommaire

Comprendre le problème : pourquoi Windows refuse de déplacer/supprimer un dossier

Sur Windows 10/11, la cause la plus fréquente de l’alerte « Action can’t be completed because the folder or a file in it is open in another program » (souvent traduite par « L’opération ne peut pas être effectuée car le dossier ou l’un de ses fichiers est ouvert dans un autre programme ») est un handle laissé ouvert par un processus. Tant que ce handle n’est pas libéré, l’Explorateur de fichiers bloque le déplacement, le renommage ou la suppression du répertoire.

La bonne nouvelle : Windows et les outils Sysinternals fournissent tout ce qu’il faut pour repérer, en quelques secondes, qui tient encore le dossier. Le cœur de la solution repose sur Resource Monitor (resmon.exe), puis en complément sur Process Explorer et Handle.exe pour les cas coriaces.

Solution native immédiate : localiser le verrou avec Resource Monitor

Objectif : filtrer les handles ouverts qui correspondent à votre dossier pour identifier le processus fautif, le fermer proprement, puis réessayer l’action.

Procédure rapide

  1. Appuyez sur Win + S, tapez resmon.exe, validez pour ouvrir Resource Monitor.
  2. Onglet CPU → repliez Processus et Services afin de ne garder visible que la section Associated Handles.
  3. Dans la zone de recherche des handles, saisissez le chemin complet du dossier (ou un morceau distinctif du chemin : nom de dossier, partie de chemin réseau, volume).
  4. Observez la liste : chaque résultat affiche le handle correspondant et surtout le processus qui le détient (colonne Image / PID).
  5. Fermez l’application fautive de manière classique. Si elle refuse ou est en arrière‑plan, sélectionnez le processus, clic droit End Process directement depuis Resource Monitor.
  6. Reprenez l’action de départ (déplacer, supprimer, renommer) : le verrou est levé.

La méthode en un tableau

ÉtapeAction détailléeRésultat attendu
1Win + S → resmon.exe → EntréeOuverture de Resource Monitor
2Onglet CPU → replier Processus et Services → garder Associated HandlesInterface épurée et lisible
3Rechercher le chemin du dossier ou une partie distinctiveListe des processus qui tiennent un handle sur le dossier/fichiers
4Fermer l’application fautive, ou clic droit End Process sur le processus identifiéVerrou libéré → déplacement/suppression possibles

Important : End Process tue le processus immédiatement et peut provoquer une perte de données non enregistrées. Préférez la fermeture normale de l’application quand c’est possible (menu Fichier → Quitter, Ctrl + S puis fermeture, etc.). N’interrompez pas un service système critique.

Astuces de recherche dans Resource Monitor

  • Utilisez un fragment de chemin unique : par exemple, tapez uniquement \\Serveur\Partage\ProjetX ou D:\Archives\2024\Factures. La recherche n’est pas sensible à la casse.
  • Chemins réseau/lecteurs mappés : si le dossier est sur Z:\ mais mappé depuis \\NAS\Données, essayez les deux formes dans la recherche.
  • Évitez les caractères génériques : tapez un segment exact du chemin. Les guillemets ne sont pas nécessaires.
  • Fichiers cachés “discrets” : des verrous proviennent parfois de desktop.ini, thumbs.db ou de fichiers temporaires. Cherchez aussi par le nom de ces fichiers.

Bonnes pratiques complémentaires pour libérer un dossier verrouillé

Redémarrer proprement l’Explorateur

Dans le Gestionnaire des tâches, sélectionnez Windows ExplorerRedémarrer. Cela libère souvent des handles “fantômes” liés aux aperçus, miniatures ou volets de prévisualisation.

Fermer les applications courantes qui verrouillent des fichiers

  • Éditeurs et viewers : Word, Excel, VS Code, Notepad++, visionneuses PDF, lecteurs multimédias…
  • Outils de sauvegarde/synchronisation : OneDrive, Dropbox, Google Drive, outils de backup temps réel. Mettez en pause la synchronisation.
  • Antivirus et indexation (Windows Search) pendant un scan intensif. Patientez quelques secondes ou stoppez temporairement le scan non critique.

Outils Sysinternals (puissance & précision)

  • Process Explorer : menu Find → Find Handle or DLL…, tapez le nom de votre dossier/fichier. Double‑cliquez pour cadrer sur le processus, puis fermez‑le proprement ou tuez‑le si nécessaire.
  • Handle.exe (console) : handle <chemin_ou_nom> liste les handles. Pour fermer un handle précis : handle -c <HandleID> -y (avancé ; risque de perte de données si le processus écrivait).

PowerShell / CMD pour agir sans l’interface graphique

Une fois les handles libérés, privilégiez la copie/déplacement en ligne de commande, souvent plus robuste face aux verrous transitoires.

# Déplacer un dossier (conserve les ACL et attributs standards)
Move-Item -LiteralPath "C:\Source" -Destination "D:\Cible"

# Déplacement robuste de gros volumes avec journalisation

robocopy "C:\Source" "D:\Cible" /MOVE /E /R:1 /W:1 /NFL /NDL /NP /LOG:"C:\robocopy_move.log"

# Suppression d'un dossier (récursive, sans invite)

Remove-Item -LiteralPath "C:\Source" -Recurse -Force 

Redémarrage (ultime recours)

Si un service ou un pilote refuse de libérer le handle, un redémarrage peut suffire. Pour les cas les plus tenaces, passez en Mode sans échec et supprimez/déplacez depuis cet environnement minimal.

Tableau : qui verrouille quoi et comment le libérer

Suspect courantSymptômeAction recommandée
OneDrive/DropboxFichiers “.tmp”, conflit de versions, activité de syncMettre en pause la sync, attendre la fin des transferts, fermer le client si besoin
Visionneuse PDF / lecteur vidéoImpossible de renommer/supprimer un PDF/MP4Fermer la fenêtre de lecture, vérifier qu’aucun onglet n’est resté ouvert
Explorateur WindowsBlocage lors de la prévisualisation (volet Aperçu/minis)Désactiver le volet de prévisualisation, redémarrer « Windows Explorer »
Antivirus / EDRActivité CPU/disque au moment de l’opérationMettre en liste d’exclusion temporaire, attendre la fin du scan planifié
Windows Search (indexeur)Blocage intermittent sur des bibliothèquesRedémarrer le service d’indexation, exclure des emplacements si nécessaire
Outil de backupFichiers verrouillés pendant la fenêtre de sauvegardeArrêter le job en cours, reprogrammer la sauvegarde en dehors des heures de travail

Cas particuliers et solutions ciblées

Chemins trop longs

Si le chemin dépasse 260 caractères (legacy), certaines opérations échouent avec des symptômes proches d’un verrou. Activez la prise en charge des chemins longs puis réessayez.

# Activer les "Long Paths" (Windows 10 1607+ / Windows 11)
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" `
  -Name "LongPathsEnabled" -PropertyType DWord -Value 1 -Force

Permissions / propriétaire

Un échec Accès refusé n’est pas un verrou : reprenez la propriété et corrigez les ACL.

takeown /F "D:\Dossier" /R /D Y
icacls "D:\Dossier" /grant Administrators:F /T

Dossiers sur un partage réseau

Le verrou peut provenir d’une machine distante. Sur le serveur, consultez Dossiers partagés → Fichiers ouverts, ou utilisez la commande suivante pour lister et fermer un fichier ouvert (administrateur serveur requis) :

net file
net file &lt;ID&gt; /close

Volet d’aperçu et miniatures

Le Volet de prévisualisation de l’Explorateur et la génération de miniatures peuvent tenir un handle sur des fichiers médias. Désactivez le volet (Affichage → Volet de prévisualisation) et cochez Toujours afficher des icônes, jamais des miniatures dans les Options des dossiers pour tester.

Conflits avec des processus en arrière‑plan

Des utilitaires comme des extracteurs d’archives, des serveurs locaux (ex. : Node, Python) ou des éditeurs avec watchers (rechargement à chaud) peuvent garder des handles ouverts. Fermez le terminal/serveur associé ou arrêtez la tâche planifiée correspondante.

Utiliser Sysinternals pour les cas difficiles

Process Explorer : recherche visuelle ultra‑précise

  1. Lancez Process Explorer en tant qu’administrateur.
  2. Menu Find → Find Handle or DLL… (Ctrl + F) et tapez une partie du chemin (ou le nom du fichier).
  3. Double‑cliquez sur un résultat : la fenêtre principale se centre sur le processus fautif.
  4. Via Properties → Handles, identifiez l’objet exact ; fermez d’abord l’application normalement, sinon Kill Process.

Handle.exe : diagnostic scriptable

Parfait pour l’automatisation et les environnements serveurs.

# Lister les handles liés à un dossier/fichier
handle "D:\Projets\X"

# Fermer un handle précis (avancé)

handle -c  -y -p  

Prudence : la fermeture forcée d’un handle peut corrompre un fichier si le processus écrivait. Utilisez-la en dernier recours et idéalement quand le processus est figé/planté.

Scripts prêts à l’emploi (PowerShell)

Déplacement fiable + rapport en cas de verrou

param(
  [Parameter(Mandatory=$true)][string]$Source,
  [Parameter(Mandatory=$true)][string]$Destination
)

try {
Move-Item -LiteralPath $Source -Destination $Destination -ErrorAction Stop
Write-Host "Déplacement OK : $Source → $Destination"
}
catch {
if ($_.Exception.HResult -in @(-2147024864, -2147024863)) { # ERROR_SHARING_VIOLATION, ERROR_LOCK_VIOLATION
Write-Host "Verrou détecté sur : $Source"
Write-Host "Ouvrez resmon.exe (Resource Monitor) → CPU → Associated Handles et cherchez : $Source"
Write-Host "Alternative avancée : handle.exe `" $Source `"`"
} else {
throw
}
} 

Redémarrer rapidement l’Explorateur et l’indexeur

Get-Process explorer -ErrorAction SilentlyContinue | Stop-Process -Force
Start-Process explorer.exe
Restart-Service WSearch -Force

Erreurs fréquentes et diagnostics

Message / CodeCause probableCorrection
“File in use”, “Folder in use”Handle ouvert (application, service, prévisualisation)Resmon → Associated Handles → fermer le processus fautif
Accès refuséACL/propriété, antivirustakeown/icacls, liste d’exclusion antivirus
Chemin non valide / trop longLimitations legacy (MAX_PATH)Activer LongPathsEnabled, raccourcir/renommer le chemin
Impossible de supprimer, partage réseauFichier ouvert depuis un autre postenet file côté serveur → fermer l’ID, prévenir l’utilisateur distant

Checklist de dépannage — de la plus rapide à la plus efficace

  1. Resmon (CPU → Associated Handles) avec le chemin : identifier et fermer le processus (préféré).
  2. Redémarrer l’Explorateur (Gestionnaire des tâches) puis réessayer.
  3. Mettre en pause les syncs (OneDrive/Dropbox/Google Drive) et fermer les viewers/éditeurs.
  4. Process ExplorerFind Handle pour un diagnostic plus fin.
  5. Handle.exe pour scripting ou fermeture ciblée (avancé).
  6. Déplacer en PowerShell/robocopy pour neutraliser les verrous transitoires.
  7. Cas particuliers : chemins longs, ACL, partage réseau, indexeur → corriger selon la table ci‑dessus.
  8. Mode sans échec ou redémarrage en dernier recours.

Conseils d’ergonomie et prévention

  • Évitez de travailler “depuis” le dossier en cours de déplacement (terminal ouvert sur ce chemin, serveur local démarré, etc.).
  • Désactivez provisoirement le volet de prévisualisation quand vous manipulez de gros lots de médias.
  • Planifiez les sauvegardes et indexations hors des heures de forte activité.
  • Standardisez des chemins courts (ex. : D:\Projets\{Année}\{Client}\{Lot}) pour éviter de heurter la limite de chemin.
  • Automatisez un script PowerShell qui bascule en mode robocopy si un partage viole les verrous à répétition.

Exemples concrets

Le PDF refuse d’être supprimé

La visionneuse intégrée ou un onglet du navigateur tient le fichier. Dans Resmon, vous verrez un handle sur le PDF détenu par AcroRd32.exe ou msedge.exe. Fermez l’onglet/fenêtre, puis supprimez.

Un dossier “Projet” sur OneDrive ne se déplace pas

Resmon exposera un handle par OneDrive.exe. Mettez la synchronisation en pause, patientez jusqu’à la fin des transferts en cours, puis relancez l’opération. Reprenez la sync une fois le déplacement terminé.

Arborescence profonde d’archives

La suppression échoue sans processus fautif évident. Activez les chemins longs, puis exécutez Remove-Item -Recurse -Force ou robocopy ... /MOVE pour contourner l’Explorateur.

FAQ

Resource Monitor ne trouve rien, mais l’erreur persiste ?

Essayez Process Explorer en administrateur (sa recherche de handles est plus exhaustive). Vérifiez aussi les processus système (indexeur, antivirus) et les chemins réseau (la session distante peut verrouiller le fichier).

Fermer un handle avec Handle.exe est‑il sûr ?

C’est un dernier recours. Si le processus écrivait, vous risquez une corruption. Préférez toujours fermer l’application fautive ; utilisez la clôture de handle uniquement si l’appli est plantée et qu’aucune donnée critique n’est en jeu.

Pourquoi ça marche mieux en ligne de commande ?

Les commandes comme robocopy gèrent les réessais, les délais et les copies atomiques. L’Explorateur se montre plus sensible aux verrous momentanés, surtout lors des opérations sur de gros lots.

Résumé — l’essentiel à retenir

  • Diagnostiquez en premier avec resmon.exe : c’est rapide, natif et précis.
  • Fermez proprement l’appli fautive, sinon End Process avec prudence.
  • Armez‑vous de Sysinternals (Process Explorer, Handle.exe) pour les cas tenaces.
  • Finalisez en PowerShell/robocopy pour des déplacements/suppressions robustes.
  • Traitez les cas particuliers : chemins longs, ACL, partages réseau, indexation, antivirus.

Avec cette méthode, vous identifiez précisément le processus fautif et débloquez vos dossiers Windows sans redémarrage ni perte de temps.

Sommaire