title: Visual Studio project dependancy question
body: <p>I have a Visual Studio solution with projects <code>A</code>, <code>B</code>, and <code>C</code>.
  <code>A</code> and <code>B</code> are indpendant and should do some task <code>T</code> every time they are build. Project <code>C</code> is denendant to <code>A</code>, <code>B</code> and when <code>C</code> is built, task <code>T</code> should be done as well. For any case it's needed task <code>T</code> to be done once.</p>
  <p><strong>First approach:</strong>
  I tried to trigger task <code>T</code> as pre-build event on projects <code>A</code> and <code>B</code>. That doesn't work when I build <code>C</code> because then <code>A</code> and <code>B</code> are build in parallel and two instances of task <code>T</code> is run in parallel and disturb each other.</p>
  <p><strong>Second approach:</strong>
  I want to create new project <code>D</code> that will do pre-build event <code>T</code>. It will not have C++ or C# sources, just one script to perform <code>T</code>. Both <code>A</code> and <code>B</code> will be dependant to <code>D</code>. This solves the issue with paralelism but has other problems with Visual studio logic.</p>
  <ol>
  <li>Visual Studio will build <code>D</code> only when it is outdated but I need it to be run always? Is it possible?</li>
  <li>When project <code>D</code> is built it should not make <code>A</code> and <code>B</code> outdated.</li>
  </ol>
  <p>Can you help to resolve these issues with Second approach or maybe there is better solution?</p>