2013-02-22 140 views
0

的vcbuild任務的輸入/輸出放慢參數是否有指定像命令行覆蓋的MSBuild

msbuild zlibvc.sln /t:zlibvc /p:OUT=$(OutDir)\zlib1.dll 

舉例輸出的方式,從標準zlibwapi.dll改變輸出到zlib1.dll?

回答

0

在C#項目的情況下,我們做的修改csproject文件在以下兩個地方是這樣的:

前:

<AssemblyName>zlibwapi.dll</AssemblyName> 

<OutputPath>bin\</OutputPath> 

後:

<ZLibAssemblyName Condition="$(ZLibAssemblyName) == '' ">zlibwapi.dll</ZLibAssemblyName> 
<AssemblyName>$(ZLibAssemblyName)</AssemblyName> 

<ZLibOutputPath Condition="$(ZLibOutputPath) == '' ">bin\</ZLibOutputPath> 
<OutputPath>$(ZLibOutputPath)</OutputPath> 

然後打電話給你的MSBuild命令象下面這樣:

msbuild zlibvc.sln /t:zlibvc /p:ZLibOutputPath=$(OutDir)\ /p:ZLibAssemblyName=zlib1.dll 

希望這或類似的事情,在工作任務vcbuild也。

+0

難道讓解決方案中的每個程序集都有這個名稱嗎?他只需要將項目指定爲msbuild(而不是sln),以便他可以覆蓋程序集名稱。 – 2013-02-22 16:17:35

+0

@JamesWoolfenden,哦。我在這個解決方案中假設了一個項目。我現在所做的更改可能會有所幫助,然後 – RinoTom 2013-02-22 16:34:14

+0

謝謝,但是...無需更改其他來源的解決方案文件。在自動構建環境中,您想要獲取該zlib並按原樣構建它。此方法也不適用於vcbuild環境(不是CSharp)。我已經在vsprops中看到過其他「源代碼更改」的解決方案,但這又不適用於VS2008。 – Jedzia 2013-03-06 09:38:33