файл держится чем-то и не хочет удалится. ПроцесЕксплорер показал, что хэндл принадлежит explorer.exe. Но ведь не сам же эксплорер держит вирус? Так вот, как узнать, какой-именно dll-ке (какому потоку) принадлежит хэндл файла?
explorer.exe держит файл, у него хэндл.
Так вот, как узнать, какой поток, принадлежащий explorer.exe, открыл файл?
То есть, подозревается один из dll-ок из-под Эксплорера. А что за упорный файл сам по себе, может быть, тот dll и есть?
Вы хотите зайти не с того "канала". Что-то подсказывает Эксплореру, чтобы он его подержал.
Процесс, или запись в реестре. Поэтому надо искать в самых модулях Эксплорера, в его расширениях и так далее, а не в хэндлах. IMHO. 
А давайте, посмотрите с ProcessActivityView (NirSoft).
