MSB3247 warning message should include referencing assemblies - by Bob Altman

Status : 

  Fixed<br /><br />
		This item has been fixed in the current or upcoming version of this product.<br /><br />
		A more detailed explanation for the resolution of this particular item may have been provided in the comments section.

Sign in
to vote
ID 336818 Comments
Status Closed Workarounds
Type Bug Repros 4
Opened 4/3/2008 2:10:31 PM
Access Restriction Public


I recently spent several days, and ultimately involved MS tech support, to figure out why I was getting warning MSB3247 ("Found conflicts between different versions of the same dependent assembly").  This warning happens when two or more assemblies in the same project reference different versions of a third assembly.

The warning tells me the name of the referenced assembly, but it doesn't give a clue as to the underlying cause of the problem (that is, it doesn't tell me which assemblies are referencing the different versions of the same assembly).

Ultimately, the tech support engineer and I had to resort to using ildasm to examine assembly manifests to figure out which assemblies in my project were causing the problem.  This whole issue could have been avoided if the warning message had told me which assemblies were causing the problem in the first place.
Sign in to post a comment.
Posted by stmarti1 on 8/5/2013 at 6:37 AM
This is not fixed at all in vs 2010, 2012...
Posted by Microsoft on 9/11/2008 at 9:47 AM
Hi Bob,
The next version of MS Build, which will ship together with the next version of the CLR and Visual Studio, will have the fix for this scenario.

Thanks for your feedback!
Posted by Bob Altman on 4/8/2008 at 11:22 AM
Thanks Izzy. The diagnostic messages were the reaason I posted this issue in the first place. They clearly tell me which assembly is multiply referenced, but they don't tell me who the culprits are that are referencing different versions of that assembly. Ultimately, that is the information that a developer needs to fix the problem identified by the warning.
Posted by Microsoft on 4/7/2008 at 7:12 PM
Hi --

Thank you for your feedback. While we certainly don't do much verbosity in the tasklist, you can get the level of verbosity you need to diagnose the issue by looking at the output window. To do this, follow these steps:

[1] Bring up the Tools/Options dialog (Tools->Options...).
[2] In the left-hand tree, select the Projects/Solutiosn node, and then select Build and Run. Note: if this node doesn't show up, make sure that the checkbox at the bottom of the dialog ("Show all settings") is checked.
[3] In the tools/options page that appears, select the MSBuild project build output verbosity level to "Diagnostic."
[4] Build the project and look in the output window.

MSBuild will have spewed out a lot of diagnostic messages. The ResolveAssemblyReferences task, which is the task from which MSB3247 originates, is probably our best task for logging diagnostic information -- those logging messages should help you debug this particular issue. Please reactivate the bug and let us know if they do not help.

-- Izzy

Izzy Gryko
Lead Software Design Engineer
Microsoft Visual Studio Platform Development
Posted by Microsoft on 4/4/2008 at 3:35 AM
Thanks for your feedback. We are escalating this issue to the appropriate group within the Visual Studio Product Team for triage and resolution. These specialized experts will follow-up with your issue.

Thank you,
Visual Studio Product Team