簡體   English   中英

是否可以通過TFS Build自動安裝Visual Studio 2012 C ++可再發行組件?

[英]Can the Visual Studio 2012 C++ Redistributable be installed automatically with a TFS Build?

我有一個使用ClearScript.V8庫的ASP.Net項目,該庫依賴於Visual Studio 2012 C ++可再發行組件來工作。 我面臨必須將其安裝在50台以上的計算機上的前景,我很好奇是否可以讓TFS為我做這件事。

我意識到這跨越了堆棧溢出和服務器故障之間的某個地方,所以我在兩個站點上都問過。

假設ClearScript.V8的二進制文件包含在您的項目中(作為復制到bin文件夾中的文件或作為NuGet包),您還應該能夠在項目中包含必要的Visual C ++可再發行文件作為二進制文件。 然后將它們存儲在TFS中。

如果您更喜歡NuGet軟件包,則可以在組織內設置本地NuGet倉庫,並創建一個具有必要DLL的NuGet軟件包,然后可以從您的項目中引用這些DLL。 如果為您的解決方案配置了NuGet軟件包還原,則將在構建解決方案之前下載軟件包。 在VS2012中,您將必須進行一些自定義,以使其在Team Foundation Build服務器上進行。

如果不確定需要包含哪些DLL,則可以使用Dependency Walker之類的工具來查找所需的DLL,或者可以調試應用程序並查看模塊窗口中加載了哪些DLL。 Microsoft具有一些要重新分發DLL的信息。

如果在加載可再發行的DLL版本沖突時遇到問題,則可以創建並排清單以確保將正確的DLL版本加載到您的應用程序中。 但是,由於您的應用程序托管在ASP.NET中,因此有些棘手,因為w3wp.exe是由IIS直接控制之外執行的。 您將必須創建一個激活上下文來配置應用程序使用的清單。

如果您需要在服務器上安裝某些東西以進行構建,我建議您使用Chocolatey。

  • Chocolatey.org/

這是PowerShell中NuGet的實現,用於顯式解決您面臨的問題。 您可以創建一個Powershell文件來安裝所需的所有位,並輕松地將其包含在TFS 2013中作為預構建步驟。您可以使用TFS社區構建工具中的PowerShell活動在TFS 2010或2012中調用PowerShell。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM