I use Inno Setup to install patch updates for my VB.net application, where I need to replace the DLL file and a couple of javascript / html files for the update. However, the DLL is not updated (it is located in the C: \ program ... files) - even on XP systems without UAC it is not replaced, but when I manually delete the DLL and re-run the patch, the file is copied, This is not only readable, and in in case of XP, the UAC / admin privilege is not involved.
What could be the reason that the file is not copied if the file already exists? It is built in VS2008 and in .NET 2.0 - the new DLL has a newer date and size difference.
Is there a way around the UAC write access issue in Vista / Win7 / 8? I think the patch will never succeed in replacing the file on these systems with UAC. Talking about our user base in order to disable it is obviously not an option.
[EDIT] The dll assembly is packaged in the setup.exe file in Visual Studio, selecting it from the Release folder when creating the solution. There is no [File] in the inno setting:
[Files] Source: C:\Visual Studio 2005\Projects\Setup5\Setup5\Debug\setup.exe; DestDir: {app} Source: C:\Visual Studio 2005\Projects\Setup5\Setup5\Debug\interact.msi; DestDir: {app} [Run] Filename: {app}\setup.exe; Flags: runmaximized
source share