Sorry to ask this, but what would be the proper way to remove those file from GAC?
This was what I was referring to in a previous post about writing a .NET program that is call through your IA install to do this for you by calling the gacutil EXE. We use this approach to get around the shortcomings of IA including a full system check to make sure that the machine is up to specs before allowing the install to move forward etc.
In the EXE that we create we will set the exit code and then test on the IA side if the exit code was a legal value ( you can decide what is legal).
In .NET, you can exit an application with an Exit Code which will allow any program that is calling that program to determine if the run was successful or not.
To exit with a code other than 0 call the Application.Exit(YourExitCodeValue).
because I got the feeling IA will just compare the file version and not the datetime stamp in those .dll files.
They will, but should really never be a factor as your program should uninstall the previous version before loading the new version. If you do not use the MSM, IA will remove the assemblies from disk when it is uninstalled....and you could call the program you create to remove any references from the GAC as well.