This build error started after I switched where my workspace was locally mapped. I have spent a couple of days stuck on this issue hoping someone can provide some help. Here is the full error:
Assembly 'Infragistics2.Win.UltraWinGrid.ExcelExport.v7.3, Version=7.3.20073.1061, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb' uses 'Infragistics2.Excel.v7.3, Version=7.3.20073.1061, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb' which has a higher version than referenced assembly 'Infragistics2.Excel.v7.3, Version=7.3.20073.38, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb' c:\Program Files\Infragistics\NetAdvantage for .NET 2007 Vol. 3 CLR 2.0\Windows Forms\Bin\Infragistics2.Win.UltraWinGrid.ExcelExport.v7.3.dll
My assembly reference in the project correctly points to version 7.3.20073.38 yet I continue to get this error.
When I look in the GAC I do see two versions (7.3.20073.1061 & 7.3.20073.38) however if I try to uninstall the old version (1061) I get an error saying it could not be uninstalled because it is required by other applications.
Any suggestions?
This definitely seem to indicate a reference problem within your solution.
Make sure all of the project references (for any and all projects) in your solution are all referencing the same version of the Infragistics assemblies.
Also, make sure none of them have CopyLocal set to true.
You might also want to check the licx files in your project and if there is anything in there that references the Infragistics assemblies, delete it.
Finally, you might want to set SpecificVersion on each of the Infragistics project reference to false.
Thanks for your suggestions, before I try this let me just mention that this project was running before I moved my local workspace.
Our team also includes about 4 other members and none of them are having this issue. It seems to be specific only to my machine. Before I make any changes to the code (that could have a negative impact on our solution and the entire team) I would like to know if there might be any suggestions specific to my build environment that could be the root of this issue.
What's the problem? Are you getting an error message of some kind?
Unfortunately I'm back....
While the previous temporary fix did stop me from receiving the build error, yesterday I came across a run time error when the code tries to reference method UtraGridExcelExporter.Export(WinGrid grid, String filename) in the dll.
As I mentioned before, everybody else on my project is correctly running version .1061 and the application exports the grid to excel as intended.
At this point I no longer wish to have version .38 on my machine, I'm back to trying to get the project to accept version .1061 reference.
So far I've done the following with no luck:
Made sure all of the project references (for any and all projects) in solution are referencing the same version of the Infragistics assemblies.
Set CopyLocal to False
Deleted licx files the project that reference the Infragistics assemblies
set SpecificVersion on Infragistics project reference to false
This is really frustrating
I found a temp solution, I did a search across my entire C:\ for the .dll throwing the error and found the 38 assemblies in a temp folder.
I went to my program files folder where the infragistics dll's were installed and added a '.bak' extension the .1061 version and copied the .38 one
My error then automatically disappeared from VS and I was able to compile the solution without any problems.
It must have been some kind of service update I made that triggered this clash in versions. I'll try to uninstall (as mentioned) and reinstall with the latest build assemblies
Well, this certainly could be an issue caused by having two different versions of the assemblies in the GAC. You might want to try uninstalling NetAdvantage and then making sure the assemblies are completely removed from the GAC, and then re-installing the release build and the service release.
I'm not sure why you can't delete the build 38 assemblies from the GAC - unless, as the error message states, you have a program running on your machine that is using them.