0

I have a Visual studio solution with multiple projects

Let say project Core, CoreExtended, ProjectA and ProjectB.

-- CoreExtended has as dependency Core.

-- Project A and ProjectB have as dependencies CoreExtended an also Core.

When i try to Build with multiple threads, msbuild has a problem because both projects ProjectA an ProjectB try to get Core and it fails. I have revised all dependencies and order. Why Visual Studio does not protect this and compile first ProjectA and then ProjectB? Why other projects than only have Core as a dependency don't fail?

Obviously when I put only one thread when building it work right.

Thanks in advance.

isra60
  • 512
  • 1
  • 6
  • 18

1 Answers1

0

Sometime ago we had some similar problems. It turned out that some of the projects had the same output directory which caused concurrency problems.

TJ Galama
  • 457
  • 3
  • 12
  • It can be a possibility as all my projects copy its own bin folder to a extern bin folder where I launch the application. Also the dlls I use for reference are the ones copied to the extern folder... – isra60 Apr 28 '15 at 19:41
  • 1
    You might decrease concurrency conflicts by restricting copying the bin content only to the projects that are not referenced by other projects within your solution. Second, on the reference from projectB to Core you could set the property 'Copy Local' to false. This way only projectA copies Core.dll to it's bin and it does't conflict when the contenct of projectB\bin is copied to the external output folder. – TJ Galama Apr 28 '15 at 20:51