O Sysinternals Process Monitor é provavelmente a melhor ferramenta para o que você descreve. Se executado sem filtros, ele capturará uma quantidade surpreendente de dados - mesmo quando estiver ocioso, o Windows ainda faz trabalhos ocasionais em segundo plano -, mas é possível verificar facilmente as ações que envolvem um arquivo específico.
Você também pode usar o Process Explorer (também da Sysinternals, agora parte da Microsoft), como sugerido por @Enigman, ou o Monitor de Recursos ( resmon.exe
, incorporado ao Windows) para ver quais processos estão abrindo seu arquivo. Haverá uma lista de todos os HANDLEs abertos; você pode procurá-lo (em resmon, vá para a aba CPU para encontrar a lista "Associated Handles").