Aktuell geht das für alle Dateien, welche
nicht per "Dateihandle" (CreateFile, also AssignFile, TFileStream und Co.) geöffnet sind.
EXE/
DLL/
BPL werden quasi per LoadLibrary als MMF geladen und dort läßt es sich umbenennen.
Abgesehn davon, wenn sich Fremdprogramme ala Virenscanner einmischen, oder wenn ein OS glaubt es sei intelligent. z.B. wenn man das Programm "nochmals" läd und das OS denkt "ahh, da ist die Datei ja schon geladen, also verwende ich sie jetzt gleich nochmal", anstatt sich die aktuelle Dateiversion zu holen, aber so intelligent ist Windows nicht.
Aber wenn's geht:
Ja, dann laufen die alten Programme weiter und beim Neustart werden dann die neuen Dateiversionen verwendet.
Aktuell =
WinNT-Reihe (mindestens WinXP, Win7, Win8, Server2003, Server2008, Server2011 und Server2012)