MSI won't replace a file on disk if the incoming file version is the same as
the installed version. Repair shouldn't make a difference to that. If the
file versions are the same, surely the file is the same? That's the
assumption that installation programs make. Here's the MSI doc.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/both_
files_have_a_version.asp
On the other hand, if it's not really a replacement (for example because
you're using RemoveExistingVersions to remove the prior version of the
entire product) it is supposed to be replaced.

Signature
Phil Wilson [MVP Windows Installer]
----
> A setup project includes C# assemblies and a VB6 DLL (vendor supplied com
> object). It's updating the assemblies just fine, but isn't replacing the
[quoted text clipped - 6 lines]
>
> Oliver