2
我在VS2010中有一個C++項目和一個c#項目,它將使用這個C++項目輸出(它使用p/invoke)。我想我可以通過編輯解決方案中的「Project dependencies ...」來確保C++項目在c#項目之前生成,但這似乎沒有任何效果,build build上的構建不考慮此設置(我正在使用TeamCity來引導構建整個解決方案文件的MSBuild文件)VS2010項目依賴關係
我認爲這用於工作,VS2010有什麼變化?或者我應該以另一種方式聲明依賴關係?
SOLUTION:訣竅是手工編輯VS2010外的csproj文件並添加這樣一段:
<ProjectReference Include="..\CobraLib\CobraLib.vcxproj">
<Project>{598506DA-91DA-4F25-948D-A14CB16ABEBA}</Project>
<Name>CobraLib</Name>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
,在正確的順序進行構建服務器過程中我的項目。唯一需要注意的是,VS2010在項目引用(「不是.NET項目」)上顯示錯誤,但其他事情正在按照我的意圖工作
我最初使用VS2010對話框,並驗證解決方案文件包含postProject設置。 – 2010-11-08 11:31:41
檢查C#項目的項目文件,它應該有一個元素,將C++項目指定爲依賴項。您也可以嘗試增加TeamCity中的msbuild詳細程度並查看日誌,這可能會讓您知道發生了什麼。我假設這是在你的本地機器上工作。 –
radical
2010-11-08 11:36:01
我應該手動編輯那一個嗎?我似乎無法使用VS2010添加它(也許我已經安裝了一些禁止添加的AddReference擴展)。我希望C++項目的輸出結束在c#文件的輸出旁邊。 – 2010-11-08 11:37:55