Ich glaube ab Vista (oder Win7) gibt es eine neue
API, die es ermöglicht den Namen und Grund einer Dateisperrung herauszufinden. Dazu muss aber der Prozess, der die Datei öffnet, diesen Grund auch angeben. Leider ist mir grad entfallen, wie die
API heißt.
Wäre interessiert. Mir ist noch keine untergekommen, aber Windows Installer hat seit langem (m.E.n. auch vor Vista) einen Dialog der zum Schließen diverser Anwendungen auffordert wenn die eine Datei benutzen die geändert werden soll oder so. Ansonsten benutzt
MSI eben einfach die gute alte Methode mit Umbenennen.