How to Delete a Stubborn Undeletable File or Folder in Windows?

Many of you would have come across situations where you can’t delete a file or folder no matter how you try. This article discusses the ways to delete files or folders that are stubborn or undeletable using normal methods.

There could be atleast 4 reasons why you’re unable to remove those stubborn files or folders.

  1. The file or folder is currently in use by some program
  2. Can’t delete files or folders having invalid character in their names
  3. You don’t have the required NTFS permissions
  4. File system corruption

How to Delete a Stubborn Undeletable File or Folder in Windows

“File in Use” Scenario

There is umpteen number of software programs that help you release the lock on a file/folder by some application. Utilities like Unlocker and Process Explorer will help you forcibly close the file or folder handle and then delete the file or folder.

Before resorting to using those programs, first see if you can delete the stubborn file after logging off and logging in again, or after a restart cycle. It helps in most cases. Even better, start Windows in Safe mode and delete the stubborn file or folder. See how to Start your PC in safe mode in Windows 10.

If you want to delete the file or folder without having to restart Windows, you can use tools like Process Explorer or Unlocker. These tools help you find the program/executable is causing the problem, release the lock and delete the file.

tips bulb iconRelated Tip: You can also use the built-in Resource Monitor to view the offending program, but Resource Monitor can’t be used to close the file handle. For more information, see post Find Which Process Has Locked a File Without 3rd Party Tools.

Restart Explorer Shell

File Explorer may sometimes have a lock on media files hooked up by its shell extensions generally. If that’s the case, cleanly exiting the Explorer shell will help. Here is how to cleanly terminate and restart the Explorer shell in Windows 7 through 10.

cleanly restart explorer via task manager

Note that in Windows 7 and above, the Windows “File in use” dialog will show you the name of the program using the file. All you need to do is first close the program.

file in use - showing program name locked the file

However, the program name may not be displayed in some cases and that’s why we need tools like Unlocker, Process Explorer or Resource Monitor.

IObit Unlocker

IObit Unlocker setup adds a context menu extension for files and folders. When you right-click on a file or folder and click IObit Unlocker, it shows which program is using the target file or folder.

IObit unlocker

Unlocker also offers you these options which are self-explanatory even for end-users:

  • Unlock
  • Unlock & Delete
  • Unlock & Rename
  • Unlock & Move
  • Unlock & Copy
  • Forced mode

You can try “Forced mode” if unlock fails in normal mode. It’s an aggressive mode wherein it terminates the related processes rather than just closing the file/folder handle.

Files or folders having reserved names or invalid character in their names

Sample scenario:  Can’t empty Windows.Old using Disk Cleanup or Storage Settings as the files in Cortana “LocalState” folder remains undeletable

IOBit Unlocker is especially helpful when you’re unable to clear out the Windows.old folder (which stores the previous Windows installation files) after installing a latest Feature Update. Windows.old may sometimes be undeletable due to a problem (invalid characters in the file name) with files under the Microsoft.Windows.Cortana_cw5n1h2txyewy folder under C:\Windows.old. The complete path for the problematic folder is below:

C:\Windows.old\Users\{username}\AppData\Local\Packages\Microsoft.Windows.Cortana_cw5n1h2txyewy

cannot delete cortana localstate folder inaccessible

As you can see the folder LocalState has a couple of dots (..) after its name, which could be preventing the folder from being deleted or accessed. Attempts to delete the folder results in the following error:

An unexpected error is keeping you from deleting the folder. If you continue to receive this error, you can use the error code to search for help with this problem.

Error 0x80004005: Unspecified error

with options to Try Again, Skip or Cancel the operation.

(or)

Location is not available

C:\Windows.old\Users..\AppData\Local\packages\Microsoft.Windows.Cortana_cw5n1h2txyewy\LocalState is unavailable. If the location is on this PC, make sure the device or drive is connected or the disc is inserted, and then try again. If the location is on a network, make sure you’re connected to the network or Internet, and then try again. If the location still can’t be found, it might have been moved or deleted.

cannot access cortana localstate folder inaccessible

hand point iconEasy fix: In IOBit Unlocker, choose the option Unlock & Delete after selecting the Cortana folder (or the entire Windows.old folder). This will help you completely wipe out Windows.old folder easily.

If you want to wipe of those invalid files and folders manually, see examples and screenshots below:

Invalid or reserved characters in file name

You may not be able to delete a file if the file name includes an invalid name (for example, the file name has a trailing space or a trailing period or the file name is made up of a space only). To resolve this issue, use a tool that uses the appropriate internal syntax to delete the file. You can use the “\\?\” syntax with some tools to operate on these files, for example: — excerpt from Microsoft KB You cannot delete a file or a folder on an NTFS file system volume

del “\\?\c:\path_to_file_that contains a trailing space.txt “

EXAMPLE: Deleting folders with reserved names or having invalid characters (such as dot and spaces) in the name.

To delete the LocalState.. folder under the Cortana Package folder, here is the path and command-line you use:

rd /s \\?\C:\Windows.old\Users\%username%\AppData\Local\Packages\Microsoft.Windows.Cortana_cw5n1h2txyewy\LocalState..\

Run that command from an administrator Command Prompt.

Another example:

Let’s say we have some invalid folders namely Con, Conduct. and LocalState..

delete folder reserved or invalid characters in name

(Note that the word con is a reserved name, and shouldn’t be used in file or folder names.)

Attempting to normally access the folder with a reserved name (e.g., con) causes the following error:

Location is not available

path:\con is not accessible.

The handle is invalid.

the handle is invalid - invalid file or folder name

To delete the folder, we’ll now run the following command from administrator Command Prompt:

rd /s "\\?\C:\con"

The other two folders namely conduct. and LocalState.. have invalid characters (.) in the file name. Let’s run the following commands to delete those folders:

rd /s "\\?\C:\conduct."
rd /s "\\?\C:\LocalState.."

delete folder reserved or invalid characters in name

Voila! The three folders are now removed.

delete folder reserved or invalid characters in name

For more information on dealing with files containing reserved or invalid characters, see Microsoft article You cannot delete a file or a folder on an NTFS file system volume.

Process Explorer

Process Explorer is an excellent tool that needs no introduction. We’ve covered Process Explorer many times in the past.

Launch Process Explorer as administrator. Use the Find option (Ctrl + F), type in the part of the file name and press ENTER

process explorer find locked files process



You’ll see the process which is using that file. All you need to do is close the program manually, and then delete the stubborn file.

Also, Process Explorer lets you close the file handle via the lower pane view. However, exiting the program is the most preferred way.

process explorer close handle - lower pane view

MoveFile.exe from Windows SysInternals

MoveFile utility (to be run from administrator Command Prompt window) allows you to schedule move and delete commands for the next reboot.

Usage:

movefile.exe [source] [dest]

Specifying an empty destination (“”) deletes the source at boot. An example that deletes stubborn.pdf is:

Example

movefile d:\tools\stubborn.pdf ""

movefile - delete file or folder on reboot

arrow hand symbolThe MoveFile utility works not just for files, but for folders as well!

To delete (on reboot) a folder named “1” located on my desktop, I used this command:

movefile C:\Users\ramesh\desktop\1 ""

The job was perfectly completed after a restart! The MoveFile utility uses MoveFileEx API to rename or delete a file. It registers the delete or rename operation in a MULTI_STRING registry value named PendingFileRenameOperations, under the following branch:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager

movefile pendingfilerenameoperations

During next restart, the Session Manager performs the delete or rename task by reading the registered rename and delete commands from the PendingFileRenameOperations registry value. As you can see in the above screenshot, Windows Defender seems to have scheduled a delete operation (to get rid of a superseded driver file) after a signature update.

Download MoveFile from Windows Sysinternals.

Incorrect NTFS Permissions

If your user account control lacks the permissions to modify a file or folder, you’ll see the “permission denied” dialog when attempting to delete it. All you need to do is take ownership of the file or folder, assign your account full control permissions before deleting the file. You can take ownership of files/folders and assign permissions via Properties, Security tab. But some users prefer the command-line method involving Takeown.exe and ICacls.exe.

Take Ownership using command-line takeown.exe

arrow hand symbolFor detailed information, see our illustrative article how to take ownership of the file(s) and folder(s) (using Takeown.exe, even recursively across sub-folders). It also describes how to assign permissions using icacls.exe.

Once done you should be good to go!

tips bulb iconRelated Tip: For easier access, you can even add “Take Ownership & Assign Full permissions” option to the right-click menu, especially if you’re going to use the option more frequently. This registry tweak does the Takeown.exe and ICacls.exe operations in one go. No need to type those commands manually!

take ownership right-click menu

File system corruption

File system corruption causes errors such as “The File or Directory is Corrupted and Unreadable” when accessing or deleting a file or folder. Running disk Error Checking or Chkdsk command ought to fix the problem.

Error Checking

Open This PC (my Computer), right-click on the drive which contains the stubborn file, and click Properties. Select the Tools menu, and click “Check”.

disk error checking windows

disk error checking windows

disk error checking windows

Clicking the Show Details link opens the relevant Event Viewer entry in the Application Log. It tells you what the problem is.

error checking - application event log error

Then proceed to repair the drive now, or on next restart as you so prefer.

disk error checking windows

Chkdsk

Alternately, you can run Chkdsk <driveletter:> /R from an elevated Command Prompt. It asks for your consent to dismount the drive and run a scan. If you choose “N” (No), it’ll prompt for scheduling a scan at next reboot. Click Y to continue.

chkdsk repair drive

After fixing the file system errors using disk Error checking or Chkdsk, see if you can delete the stubborn file or folder.

That’s it! If you know any other interesting methods to delete files which are otherwise “undeletable”, post it in the Comments section below.

About the author

Ramesh Srinivasan founded Winhelponline.com back in 2005. He is passionate about Microsoft technologies and he has been a Microsoft Most Valuable Professional (MVP) for 10 consecutive years from 2003 to 2012.

Leave a Comment