共用方式為


逐步解說:設定 Team Build 以建置 Visual Studio 安裝專案

更新:2007 年 11 月

您可以透過加入自訂工作或使用在建置 (Build) 流程期間指定之時間點執行的 MSBuild 工作,即可自訂 Team Foundation Build。本主題將說明一些自訂組建定義以便使用 MSBuild Exec 工作來建置 Visual Studio 安裝專案的必要步驟。

必要條件

您需要下列項目才能完成本逐步解說:

用戶端電腦:

  • Development 版已安裝

  • Team 總管已安裝

  • Team Foundation Server 的可用連接

  • 要當做工作區 (Workspace) 使用的本機目錄

Team 專案:

  • 已建立的組建定義

  • 對應至本機目錄的原始檔控制工作區

    如需詳細資訊,請參閱 HOW TO:建立對應工作區。本逐步解說會使用本機工作區:C:\DeploymentProjects。

  • 啟用原始檔控制。

    1. 若要確保 Visual Studio 已設定為使用 Team Foundation 版本控制,請按一下 [工具] 功能表上的 [選項],再按一下 [原始檔控制]。

    2. 選取 [目前的原始檔控制外掛程式] 清單方塊中的 [Visual Studio Team Foundation Server]。

已安裝 Team Foundation Build 的組建代理程式。 

您必須在組建代理程式上安裝 Visual Studio,才能使用 MSBuild Exec 工作呼叫 devenv.exe,以便建置安裝專案。如需詳細資訊,請參閱Exec 工作Devenv 命令列參數

注意事項:

組建代理程式就是執行組建的電腦。如需詳細資訊,請參閱 HOW TO:建立和管理組建代理程式

必要的使用權限

您必須將 [管理組建] 和 [管理工作區] 使用權限設定為 [允許],才能完成這個逐步解說。您也必須將 [簽入] 和 [簽出] 使用權限設定為 [允許]。

您必須將 [建立新專案] 使用權限設定為 [允許],而且您必須是 Windows SharePoint Server 中 [SharePoint Central Admins] 群組的成員且在 SQL Reporting Services 中擁有 [內容管理員] 使用權限,才能建立 Team 專案。

在執行 Team Foundation Build 所建立之安裝程式的電腦上,您必須擁有 [安裝] 使用權限。

建立 Visual Studio 專案

本逐步解說中的程序會建立一個簡單的 C# windows Form 應用程式,可讓您當做設定 Team Foundation Build 以建置 Visual Studio 安裝專案的範例。

若要建立 Visual Studio Windows Form 應用程式

  1. 在 [檔案] 功能表上,指向 [新增],然後按一下 [專案]。

  2. 在 [新增專案] 對話方塊中,於 [專案類型] 窗格內選取 [Visual C# ]。在 [範本] 窗格中選取 [Windows Form 應用程式]。

  3. 在 [名稱] 方塊中,輸入 HelloWorldTest。在 [位置] 方塊中,輸入 C:\DeploymentProjects,或開啟您為 Team 專案所選取的本機工作區。

  4. 按一下 [確定]。

    HelloWorldTest 隨即顯示在 [方案總管] 中,而且 Form1.cs 隨即顯示在 [Windows Form 設計工具] 中。

  5. 在 [檢視] 功能表上,按一下 [工具箱] 以顯示控制項清單。

  6. 將 [Button] 控制項拖曳至表單。

  7. 按兩下新按鈕,開啟 [程式碼編輯器]。

    Visual C# 已插入名稱為 button1_Click 的方法。

  8. 將以下程式碼加入至方法中:

    private void button1_Click(object sender, EventArgs e)
            {
                MessageBox.Show("Hello World!");
    
            }
    
  9. 在 [檔案] 功能表上,按一下 [全部儲存] 來儲存變更。

  10. 在 [建置] 功能表上,按一下 [建置 HelloWorldTest] 建置方案並確認沒有建置錯誤。

若要建立部署專案

  1. 在 [方案總管] 中選取 [HelloWorldTest] 方案,接著在 [檔案] 功能表上指向 [加入],然後按一下 [新增專案]。

  2. 在 [加入新的專案] 對話方塊的 [專案類型] 窗格中,展開 [其他專案類型] 節點,再按一下 [安裝和部署],然後按一下 [範本] 窗格中的 [安裝專案]。在 [名稱] 方塊中,輸入 HelloWorldTestInstaller。

  3. 按一下 [確定],關閉對話方塊。

    專案會加入至 [方案總管],並開啟 [檔案系統編輯器]。

若要將 HelloWorldTest 應用程式加入至安裝程式

  1. 在 [方案總管] 中選取 [HelloWorldTestInstaller]。在 [檔案系統編輯器] 中,以滑鼠右鍵按一下 [應用程式資料夾] 節點、指向 [加入],然後按一下 [檔案]。

  2. 在 [加入檔案] 對話方塊中,開啟 HelloWorldTest.exe 的位置、選取此檔案,然後按一下 [開啟]。

    本逐步解說中的位置為 C:\DeploymentProjects\HelloWorldTest\HelloWorldTest\obj\Debug\HelloWorldTest.exe。您的檔案路徑可能會根據本機工作區的位置而所有不同。

  3. 在 [檔案] 功能表上,按一下 [全部儲存] 來儲存變更。

  4. 在 [建置] 功能表上,按一下 [建置 HelloWorldTestInstaller] 建置安裝程式的本機複本並確認沒有建置錯誤。

    若要確認安裝專案是否已建置安裝程式,請開啟輸出檔位置。您應該會在輸出檔位置中看見 HelloWorldTestInstaller.msi 和 setup.exe。

    注意事項:

    若要尋找輸出檔,請在 [方案總管] 中以滑鼠右鍵按一下 [HelloWorldTestInstaller] 專案,然後按一下 [屬性]。在 [HelloWorldTestInstaller 屬性頁] 對話方塊中,[輸出檔名稱] 方塊會包含安裝程式檔的位置。

若要修改 vdproj 檔以便使用 Team Foundation Build

  1. 以滑鼠右鍵按一下 [方案總管] 中的 [HelloWorldTestInstaller] 專案,然後按一下 [屬性]。按一下 [HelloWorldTestInstaller 屬性頁] 對話方塊中的 [組態管理員]。

    確定已同時針對 HelloWorldTest 和 HelloWorldTestInstaller 選取了 [建置] 方塊。

  2. 按一下 [關閉] 以關閉 [組態管理員] 對話方塊,然後按一下 [確定] 關閉 [HelloWorldTestInstaller 屬性頁] 對話方塊。

  3. 在 [檔案] 功能表上,按一下 [全部儲存] 來儲存變更。

  4. 找出 HelloWorldTestInstaller.vdproj 檔。

    本逐步解說中的位置為 C:\DeploymentProjects\HelloWorldTest\HelloWorldTestInstaller。您的檔案路徑可能會根據本機工作區的位置而所有不同。

  5. 以滑鼠右鍵按一下 [HelloWorldTestInstaller.vdproj]、指向 [開啟方式],然後按一下 [選擇程式]。在 [開啟方式] 對話方塊的 [程式] 窗格中,選取 [記事本],然後按一下 [確定],即可在 [記事本] 中開啟 HelloWorldTestInstaller。

  6. 確認列出的所有檔案路徑都相對於 HelloWorldTestInstaller.vdproj 檔的位置。

    其中應該不會列出絕對路徑。

若要將 HelloWorldTest 加入並簽入 Team Foundation 原始檔控制

  1. 在 [方案總管] 中,以滑鼠右鍵按一下 [HelloWorldTest] 方案,然後按一下 [將方案加入至原始檔控制]。

    此時所有檔案旁邊都會顯示一個黃色的加號,表示它們正暫止加入至原始檔控制的作業。

  2. 以滑鼠右鍵按一下 [方案總管] 中的 [HelloWorldTest] 方案,然後按一下 [簽入]。在 [簽入 - 原始程式檔 - 工作區: <工作區名稱>] 對話方塊中,捲動至已選取的檔案。清除 [HelloWorldTest.exe] 的 [名稱] 方塊,然後按一下 [簽入]。

    此時這些檔案都已簽入 Team Foundation 版本控制。

    重要事項:

    確定取消核取可執行檔,因為您正在設定 Team Foundation Build 以建置新的可執行檔。

修改 TFSBuild.proj 檔

在您使用 Team Foundation Build 建置 HelloWorldTestInstaller 專案之前,必須先建立新的組建定義,或使用可修改的現有組建定義。如需詳細資訊,請參閱 HOW TO:建立組建定義。您必須修改與組建定義相關聯的 TFSBuild.proj 專案檔,才能指示其建置安裝專案。

若要修改 TFSBuild.proj 檔來建置安裝專案

  1. 在 [檢視] 功能表上,指向 [其他視窗],然後按一下 [原始檔控制總管]。

  2. 在 [原始檔控制總管] 中,展開 [資料夾] 窗格內的 Team 專案,然後尋找您建立的 TFSBuild.proj 檔。預設位置是 TeamBuildTypes 資料夾,位於您的 Team 專案資料夾底下。

  3. 在 [檢視] 窗格中,選取您想要用來建置 HelloWorldTest 和 HelloWorldTestInstaller 的組建類型。如果您在本機工作區中沒有檔案的複本,請以滑鼠右鍵按一下 TeamBuildType 資料夾,然後按一下 [取得最新的版本]。

    這個動作會讓這些檔案可用於簽出,以便進行編輯。

  4. 在 [檢視] 窗格中,按兩下您的組建類型、以滑鼠右鍵按一下 TFSBuild.proj,然後按一下 [簽出以編輯]。在 [簽出] 對話方塊中,選取 [無 - 允許共用簽出],然後按一下 [簽出]。

    此時 TFSBuild.proj 檔旁邊會顯示紅色的核取記號,表示它的原始檔控制狀態。

  5. 按兩下 TFSBuild.proj 檔,即可在 Visual Studio XML 編輯器中開啟此檔案。

  6. 以粗體類型將下列程式碼加入至 TFSBuild.proj 檔結尾的 </Project> 標記前。

    <Target Name="AfterCompile">     <Exec Command="&quot;$(ProgramFiles)\Microsoft Visual Studio 9.0\Common7\IDE\devenv&quot; &quot;$(SolutionRoot)\HelloWorldTest\HelloWorldTestInstaller\HelloWorldTestInstaller.vdproj&quot; /Build &quot;Debug|Any CPU&quot;"/>     <Copy SourceFiles="$(SolutionRoot)\HelloWorldTest\HelloWorldTestInstaller\Debug\HelloWorldTestInstaller.msi; SolutionRoot)\HelloWorldTest\HelloWorldTestInstaller\Debug\setup.exe" DestinationFolder="$(OutDir)" /> </Target> 
    

    這樣就會透過叫用 devenv.exe 程式,使用 MSBuild exec 工作來建置 HelloWorldTestInstaller 安裝專案。如需詳細資訊,請參閱 Exec 工作。MSBuild copy 工作可用來將 .msi 和 .exe 檔複製到 Team Foundation Build 輸出目錄。如需詳細資訊,請參閱 Copy 工作

    AfterCompile 目標會在 Team Foundation Build 已完成執行 CoreCompile 目標後執行,其中已編譯 HelloWorldTest 應用程式。如需目標名稱的詳細資訊,請參閱瞭解 Team Foundation Build 組態檔

  7. 在 [檔案] 功能表上,按一下 [儲存] 儲存變更,然後關閉 TFSBuild.proj。

  8. 在 [原始檔控制總管] 中,以滑鼠右鍵按一下 TFSBuild.proj,然後按一下 [簽入暫止的變更]。您可以選擇性地在 [簽入 - 原始程式檔 - 工作區: <工作區名稱>] 對話方塊中加入註解。然後,按一下 [簽入],將 TFSBuild.proj 簽入原始檔控制。

執行組建定義

在您修改了 TFSBuild.proj 檔並將變更儲存在 Team Foundation 版本控制之後,請執行組建定義以建置部署專案。

若要執行 Team 組建定義

  1. 按一下 [建置] 功能表上的 [佇列新組建]。

  2. 在 [佇列組建 "Team 專案名稱"] 對話方塊中,選取您要使用的組建定義、組建代理程式、佇列中的優先權,然後按一下 [佇列]。

    如需詳細資訊,請參閱 HOW TO:佇列或啟動組建定義

    您可以在 Build 總管中監視建置流程。如需詳細資訊,請參閱 HOW TO:監視建置進度

  3. 在 Build 總管中,按一下 [摘要] 標題底下的記錄檔。檢查記錄檔是否有任何錯誤。

    注意事項:

    您可以安全地忽略警告「MSB4078: 專案檔 "HelloWorldTestInstaller\HelloWorldTestInstaller.vdproj" 不受 MSBuild 支援,無法建置」。這個檔案是由使用 MSBuild Exec 工作的 devenv.exe 程式所建置。

若要安裝產生的安裝檔

  1. 找出組建置放位置 \\<drop location>\Public_build\HelloWorldTestBuild_<build number>\Release。

    置放位置與記錄檔位置是相同的檔案共用,而且在 Build 總管中列於 [摘要] 標題底下。

  2. 將 HelloWorldTestInstaller.msi 和 setup.exe 檔複製到您屬於 [Windows Administrator] 安全性群組成員或將 [安裝] 使用權限設定為 [允許] 的電腦上。

  3. 按兩下 setup.exe 檔案,並遵循安裝精靈的指示。

    HelloWorldTestInstaller.exe 便會安裝在路徑 <root>:\Program Files\Microsoft\HelloWorldTestInstaller 底下。

  4. 巡覽至 <root>:\Program Files\Microsoft\HelloWorldTestInstaller。

  5. 按兩下 .exe 檔案,即可執行此應用程式。

後續步驟

您可以修改 Visual Studio 安裝專案,以便針對其他步驟設定安裝精靈。如需詳細資訊,請參閱 Windows Installer 部署概念

請參閱

工作

逐步解說:使用自訂工作自訂 Team Foundation Build

其他資源

在 Team Foundation Build 中使用組建定義

使用 Team Foundation Build 管理組建