2015-05-15 47 views
0

我使用的是Wix 3.9,當我在TFS中運行持續集成構建時,出現錯誤 heat.exe: The directory could not be found,因爲TFS將二進制文件放在與本地計算機不同的位置,所以項目將構建本地但不在TFS上。在wixproj文件中設置二進制文件的位置

在我的wixproj文件中,我爲在本地工作的二進制文件設置了一個位置 Dir=$(SolutionDir)\ProjectName\bin\$(Configuration)。 有什麼我可以設置這將在我的本地計算機和TFS上找到二進制文件?

我正在尋找類似於項目引用變量$(var.MyProject.TargetDir)的東西,但這似乎在wixproj文件中不起作用。

+0

爲什麼不能使用$(var.MyProject.TargetDir)工作?你有沒有添加一個項目引用MyProject?什麼是錯誤? –

回答

0

我通過更改我的項目文件,將二進制文件輸出到與Team Foundation Build相同的位置來解決此問題。這樣,桌面和持續集成構建都可以使用與常見二進制文件目錄相同的引用。

如果您使用的是Team Foundation Build 2012或更早版本,則您的目錄引用將爲:Dir=$(SolutionDir)..\Binaries\$Configuration。 C#項目中的相應輸出路徑將爲..\..\Binaries\Release..\..\Binaries\Debug(假定項目文件夾位於sources目錄的根目錄中)。

如果您使用的是Team Foundation Build 2013,則可以使用相同的技術,但Binaries文件夾將變爲bin。您的目錄參考變爲:Dir=$(SolutionDir)..\bin\$Configuration。項目輸出文件夾需要進行類似的更改。

團隊基礎生成2013有更多的選項控制輸出的位置,在那裏你可以把輸出二進制文件相同的佈局作爲您的項目結構。我沒有親自使用過,但可能會提供一個解決方案。

+0

將項目文件更改爲將二進制文件輸出到Team Foundation Build爲我工作的同一位置,謝謝。 – Scott

相關問題