views:

166

answers:

2

I've recently taken over a project, and the original developer has gone. I'm now trying to install the app on a new server, and I've got a problem with dependent assembly versions.

The project is a reporting tool, with (unfortunately) a reference to Crystal. On my machine I have version 11.5.9500.313 of CrystalDecisions.CrystalReports.Engine.dll.

The NAnt script that does the build defines the references, including the Crystal dll, but does not define the version number.

When I build the app, using the NAnt script, and analyse the assembly with Reflector, the reference is for version 11.5.3300.0.

Can anyone explain where the version number of this reference comes from?

A: 

It comes from the references in the vs. project file. Open the project file in a text editor and check it out. Anyway, to fix re-add the references in the visual studio.

eglasius
The version in the csproj file is 11.5.3700.0, so it's not from there
LordSauce
A: 

Assembly version (from AssemblyVersionAttribute) is not necessarily the same as the file version (from AssemblyFileVersionAttribute). Unless you use a tool which returns the assembly version consistently (e.g. Reflector) comparing versions is going to be completely unreliable.

Richard
Spot on - just loaded the file which Windows claims is 11.5.9500.313 into Reflector, and it's 11.5.3300.0.Thanks!
LordSauce