Helping people with computers... one answer at a time.
Windows tries to prevent corruption by disallowing removal of USB devices that are "in use". Unfortunately it's not always obvious what "in use" means.
Whenever I plug in a flash drive or my external hard drive (Western Digital My Book), I cannot safely remove when I click on the icon. I keep getting the message that the drive is currently in use -- try again later. But, no matter how many times I try, I keep getting the same message. I end up having to shut down my computer to remove the device.
•
Well, windows certainly thinks that some program is attempting to access the USB drive. Since it's not guaranteed to be safe to remove a drive while it's in use, Windows tells you that you can't. The "wait until later" part is all about waiting until that program, whatever it is, is done with the drive.
What program?
Figuring that out is the trick...
•
Here's the message we're talking about:

This pops up if you attempt to "safely remove hardware" on an external USB flash or hard drive and Windows thinks that the drive is in-use by some program on your machine.
It turns out that finding out what program that might be isn't particularly obvious, but we can go searching for clues.
Here's the approach I use.
First, go download and run Process Explorer - the free Sysinternals utility from Microsoft.
In Windows 7, either launch Process Explorer with the "/e" option (as in procexp /e - note the space before the /), or once it's running click on the File menu and then Show Details for All Processes. This will cause Process Explorer to re-launch itself with full administrative access. You may get a UAC confirmation. This is required to allow Process Explorer to see "inside of" all processes on the machine.
With Process Explorer running, use its Find menu, Find handle or DLL ... function, and search for \device\harddisk. You should get results similar to this:

You can see that the list includes several entries (yours will almost certainly be different). And it's not at all obvious which hard disk each line represents. However clues are here.
In my case I looked down this list and realized that WS_10001.WMA, listed in the right hand column, is an audio file that I was just listening to. I had failed to close the audio player (mplayerc.exe, listed in the left hand column). I closed the player, and "Safely Remove Hardware" worked just fine.
It's difficult to predict what you'll find that might have something open on your external drive. In my case it was simple, I'd been listening to an audio file that I immediately recognized. The clues you get might not be quite as obvious. In particular, check the list of programs you'll see on the right of your own search results list. See if any of those might have a reason to be accessing the USB drive.
I'm guessing that some of the unexpected offenders you might find in that list include anti-virus programs who've started scanning the drive, anti-spyware tools doing the same, the Windows indexing service (you might need to turn off indexing of the external drive) and other tools that might try to automatically access hard drives that are found on your system.
Article C3246 - December 23, 2007 « »
May 12, 2012 8:24 PM
I get this error all the time and I thank the author for providing a useful way to find out what is causing the problem. I've found that frequently it's Microsoft's own software that does it; for example, if you've saved an MS Word file to a usb drive, Word will hold onto the drive even if the file is closed until and unless you close out of Word altogether. I find it rather ironic that Microsoft's operating system is incapable of controlling the behaviour of Microsoft's own applications. It might be different if it were a third-party app that was going a bit rogue, but when it's MS going rogue on itself, well....
13-May-2012
May 19, 2012 8:07 AM
Download 'Unlocker': works perfectly for me.
Les Millgate
May 19, 2012 8:14 AM
Download 'Unlocker': works perfectly for me.
Les Millgate
June 2, 2012 8:18 AM
Rick Broida of PCWorld recently had an article about this. He says (with the USB device plugged in) to right click "My Computer" on the desk top, select Properties then the Hardware tab. Click the Device Manager and expand the Drives device. Right click your USB device and again select Properties and under the polices tab make sure the "Optimize for Quick Removal" is selected. Then he says you can just remove your USB device without loss of data. Do you trust your data to it?
August 30, 2012 4:21 PM
Well, here we are five years after the first comment! And the bug is still with us! Nothing like stability.
Windows 7 Home Premium
Procexp Version 15.22
Procexp File menu has no Show Details for All Processes
I run with admin.
USB drive, set for quick removal
When I run Macrium Reflect, and exit, Task Manager shows ReflectService.exe running, and Procexp's Find shows process System with Macrium files. When I click a line in Process Explorer Search window, the corresponding line in Procexp's main window's lower pane is highlighted. When I right click the highlighted line, and select Close Handle, I get the error "Error opening process: The handle is invalid."
Procexp doesn't show ReflectService.exe.
Killing ReflectService.exe with Task Manager made no difference; Procexp's Find still showed the Macrium files.
(I know why. The programmer who wrote the code sold his Microsoft stock and retired to the Riviera.)