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.
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.