title: Visual Studio: how to handle project dependencies right?
body: <p>I'm writing a program (in C++), which requires several VS projects, that I would like to put in the same VS solution. I'm using Visual Studio 2010.</p>
  
  <p>Here is simply the wanted architecture : I'm using a 3rd party library (A) for my project, I have all the headers and .lib files, that I compiled with the source code.</p>
  
  <p>With this library, I'm writing my own classes and function. That is my project (B).</p>
  
  <p>Then I would like to develop two interfaces for the users: A command line interface (C1) and a GUI interface (C2), that are using the classes and functions defined in (B).</p>
  
  <pre><code>A &lt;-- B &lt;-- C1
          &lt;-- C2
  </code></pre>
  
  <p>I'm new to Visual Studio, and I don't know how to handle these dependencies properly.
  Shall I use project dependencies (in the solution properties) or references (in the project properties) ? In fact, I'm not sure what dependencies and references are doing exactly.</p>
  
  <p>Shall I compile B into some .lib library, or do something else ? If I do so, have to link only B.lib to my C1 and C2 projects, or should I also link A.lib (in other words, is the content of A.lib included somehow in B.lib ?).
  And of course I would want the dependencies to be handle well, in order to always work with the up-to-date version of each project.</p>
  
  <p>Is there a good way of doing it ? 
  Thank's in advance, and have a nice week-end :)</p>