共用方式為


逐步解說:將文件和組件部署至不同的本機資料夾 (2003 系統)

更新:2007 年 11 月

適用於

本主題中的資訊僅適用於指定的 Visual Studio Tools for Office 專案和 Microsoft Office 版本。

專案類型

  • 文件層級專案

Microsoft Office 版本

  • Microsoft Office 2003

如需詳細資訊,請參閱依應用程式和專案類型提供的功能

此逐步解說示範如何部署文件層級自訂,以便讓文件和組件位於使用者電腦上的不同資料夾。這種部署類型稱為本機/本機部署模型。

如需部署方案之選項的詳細資訊,請參閱部署模型 (2003 系統)。如需文件層級自訂的詳細資訊,請參閱 文件層級自訂的架構

此逐步解說會說明以下工作:

  • 編輯文件中的內嵌應用程式資訊清單,使它指向組件。

  • 授與完全信任給位於本機資料夾的 Visual Studio Tools for Office 方案組件。

必要條件

您需要下列元件才能完成此逐步解說:

  • Visual Studio Tools for Office (Visual Studio 2008 Professional 和 Visual Studio Team System 的選擇性元件)。

  • Microsoft Office Word 2003 或 Microsoft Office Excel 2003。

    注意事項:

    這個逐步解說會假設您要部署 Word 方案。如果您想要使用 Excel 方案執行此逐步解說,請將所有程式碼範例中的 Word 專案名稱取代成您的 Excel 專案名稱。

  • 開發電腦上的系統管理員權限,使您可以設定安全性原則。

建立要部署的方案

第一步,請先建立基本的 Visual Studio Tools for Office 方案以便部署。如果您已經有要部署的方案,可以跳過這一節,直接進入<部署方案>。

若要建立要部署的方案

  1. 使用 Office 2003 的專案範本建立 [Word 文件] 專案,並命名為 WordDeployment。

    在精靈中選取 [建立新文件]。如需詳細資訊,請參閱 HOW TO:建立 Visual Studio Tools for Office 專案

  2. 在 [方案總管] 中,以滑鼠右鍵按一下 ThisDocument 程式碼檔,然後按一下 [檢視程式碼]。

  3. 將下列程式碼加入 ThisDocument_Startup 事件處理常式中。這段程式碼會在文件開啟時顯示訊息,以方便您確認方案部署是否成功。

    MessageBox.Show("The deployment is successful")
    
    MessageBox.Show("The deployment is successful");
    

    如需 Startup 事件的詳細資訊,請參閱Visual Studio Tools for Office 專案事件

  4. 按 F5 建置及執行專案。確認訊息是否會出現。

部署方案

現在,您可以將文件和組件部署到開發電腦上的不同資料夾。

若要部署方案

  1. 在 Windows 系統磁碟機 (%SystemDrive%) 的根目錄中建立名稱為 TestDeployDocument 和 TestDeployAssembly 的資料夾。例如,如果您的系統磁碟機是 C,新資料夾就會是 C:\TestDeployDocument 和 C:\TestDeployAssembly。

  2. 將文件從組建輸出資料夾 (通常是 project folder\bin\debug 或 project folder\bin\release) 複製到 %SystemDrive%\TestDeployDocument 資料夾,並將組件從組建輸出資料夾複製到 %SystemDrive%\TestDeployAssembly 資料夾。

  3. 開啟 %SystemDrive%\TestDeployDocument 資料夾中的文件。您會看到錯誤訊息,說明系統找不到或無法載入自訂組件。

    建置方案時,文件會假設組件與文件位於相同資料夾。組件的位置儲存在文件的內嵌應用程式資訊清單中。如果您將文件和組件部署到不同的資料夾中,則您必須編輯內嵌應用程式資訊清單,以指定新的組件路徑。下一節會說明此步驟。

  4. 結束 Word。

  5. 關閉 Visual Studio 中的方案。

    請確定您並未在 Word 或專案設計工具的執行個體中開啟文件。如果文件已開啟,則在下一個步驟中,嘗試使用 ServerDocument 存取文件將會失敗。

編輯內嵌的應用程式資訊清單

您可以使用 ServerDocument 類別編輯文件中的內嵌應用程式資訊清單,使其指向自訂組件的新位置。使用 ServerDocument 編輯內嵌應用程式資訊清單的程式碼,必須在與您要部署之文件有關聯的 Visual Studio Tools for Office 專案組件之外。

若要編輯內嵌的應用程式資訊清單

  1. 建立新的主控台應用程式專案。如需詳細資訊,請參閱 HOW TO:建立方案和專案

  2. 在新專案中加入 Microsoft.VisualStudio.Tools.Applications.Runtime.dll 組件的參考。

  3. 將下列 using 陳述式 (C#) 或 Imports 陳述式 (Visual Basic) 加入至 Program.cs 或 Module1.vb 程式碼檔案頂端。

    Imports Microsoft.VisualStudio.Tools.Applications.Runtime
    
    using Microsoft.VisualStudio.Tools.Applications.Runtime;
    
  4. 在 Main 方法中加入下列程式碼,以更新內嵌的應用程式資訊清單。將 full document path 取代成開發電腦上其部署位置之文件的完整路徑,例如 C:\TestDeployDocument\WordDeployment.doc。將 full assembly path 取代成要部署之資料夾中組件的完整路徑,例如 C:\TestDeployAssembly\WordDeployment.dll。

    Dim sd As ServerDocument = Nothing
    Try
        sd = New ServerDocument("full document path")
        sd.AppManifest.Dependency.AssemblyPath = _
            "full assembly path"
        sd.Save()
    Finally
        If Not sd Is Nothing Then
            sd.Close()
        End If
    End Try
    
    ServerDocument sd = null;
    try
    {
        sd = new ServerDocument(@"full document path");
        sd.AppManifest.Dependency.AssemblyPath = 
            @"full assembly path";
        sd.Save();
    }
    finally
    {
        if (sd != null)
        {
            sd.Close();
        }
    }
    
  5. 按 F5 建置及執行專案。主控台應用程式會更新內嵌應用程式資訊清單中的組件路徑,然後關閉。

  6. 關閉主控台應用程式專案。

  7. 開啟 %SystemDrive%\TestDeployDocument 資料夾中的文件。您會看到錯誤訊息,說明目前的 .NET 安全性原則不允許該自訂執行。這是因為您還沒有取得該組件的完全信任授權。

  8. 結束 Word。

    必須關閉先所有的 Word 執行個體,安全性原則變更才能生效。

設定安全性原則

您必須先對 .NET Framework 2.0 安全性原則中的組件授與完全信任,方案才能順利執行。此逐步解說使用 [程式碼存取安全性原則] 工具 (Caspol.exe) 授與組件完全信任。如需使用 Caspol.exe 的詳細資訊,請參閱程式碼存取安全性原則工具 (Caspol.exe)使用程式碼存取安全性原則工具 (Caspol.exe) 設定安全性原則

安全性注意事項:

這些是依據 URL 辨識項 (Evidence) 設定安全性原則的基本步驟,用來完成此逐步解說。如果不確定這個位置是否安全,請勿在實際方案中,使用這些步驟來授與組件信任。另外,除了組件的 URL 以外,您還應該使用其他辨識項做為實際方案的安全性基礎。如需詳細資訊,請參閱執行 Office 方案的安全性需求 (2003 系統)

若要授與組件完全信任

  1. 在命令提示字元中輸入下列命令以建立新的程式碼群組,授予組件完全信任。

    %windir%\Microsoft.NET\Framework\v2.0.50727\caspol -u -ag All_Code -url "full assembly path" FullTrust -n "Test_Deployment"
    

    將 full assembly path 取代成開發電腦上組件的完整路徑,例如 C:\TestDeployAssembly\WordDeployment.dll。

    -n 參數指定新程式碼群組的名稱。這不是必要參數,但是指定標籤可以讓您在完成此逐步解說之後,更容易識別及移除新程式碼群組。

  2. 當系統提示您確認是否要執行作業時,請輸入 yes,然後按 ENTER。

  3. 開啟 %SystemDrive%\TestDeployDocument 資料夾中的文件,並確認訊息是否會出現。

後續步驟

您也可以將文件和組件部署到相同的本機資料夾,或是將文件和組件部署到網路資料夾中。如需詳細資訊,請參閱下列逐步解說:

請參閱

工作

逐步解說:將文件和組件部署至本機資料夾 (2003 系統)

逐步解說:將文件部署至本機資料夾並將組件部署至網路資料夾 (2003 系統)

逐步解說:將文件和組件部署至網路資料夾 (2003 系統)

逐步解說:使用部署資訊清單部署文件層級自訂 (2003 系統)

逐步解說:使用 Windows Installer 檔部署文件層級自訂 (2003 系統)

概念

部署 Office 方案 (2003 系統)

部署文件層級自訂 (2003 系統)

部署模型 (2003 系統)