Walkthrough: Deploying a Document and an Assembly to a Local Folder (2003 System)

Applies to

The information in this topic applies only to the specified Visual Studio Tools for Office projects and versions of Microsoft Office.

Project type

  • Document-level projects

Microsoft Office version

  • Microsoft Office 2003

For more information, see Features Available by Application and Project Type.

This walkthrough demonstrates how to deploy a document-level customization to a new folder on your development computer, so that the document and the assembly are located in the same folder. This type of deployment is known as the local/local deployment model.

For more information about options for deploying your solution, see Deployment Models (2003 System). For more information about document-level customizations, see Architecture of Document-Level Customizations.

This walkthrough illustrates the following tasks:

  • Granting full trust to a Visual Studio Tools for Office solution assembly that is located in a local folder.

Prerequisites

You need the following components to complete this walkthrough:

  • Visual Studio Tools for Office (an optional component of Visual Studio 2008 Professional and Visual Studio Team System).

  • Microsoft Office Word 2003 or Microsoft Office Excel 2003.

    Note

    This walkthrough assumes that you are deploying a Word solution. If you want to perform the walkthrough with an Excel solution, replace the name of the Word project with the name of your Excel project in all code examples.

  • Administrator privileges on the development computer, so you can set the security policy.

Creating a Solution to Deploy

As the first step, create a basic Visual Studio Tools for Office solution to deploy. If you already have a solution that you want to deploy, you can skip this section and proceed to "Deploying the Solution".

To create a solution to deploy

  1. Create a Word Document project with the name WordDeployment, using the project template for Office 2003.

    In the wizard, select Create a new document. For more information, see How to: Create Visual Studio Tools for Office Projects.

  2. In Solution Explorer, right-click the ThisDocument code file, and then click View Code.

  3. Add the following code in the ThisDocument_Startup event handler. This code displays a message when the document opens, which will make it easy to verify whether the solution has been deployed successfully.

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

    For more information about the Startup event, see Visual Studio Tools for Office Project Events.

  4. Press F5 to build and run the project. Verify that the message appears.

Deploying the Solution

Now you can deploy the document and assembly to a new folder on your development computer.

To deploy the solution

  1. Create a folder named TestDeploy at the root of the Windows system drive (%SystemDrive%). For example, if your system drive is C, the directory would be C:\TestDeploy.

  2. Copy the document and assembly from the build output folder (typically project folder\bin\debug or project folder\bin\release) to the %SystemDrive%\TestDeploy folder.

  3. Open the document in the %SystemDrive%\TestDeploy folder. You will see an error message that states that the current .NET security policy does not permit the customization to run. This is because you have not granted full trust to the assembly yet.

  4. Click OK, and then close the document.

Setting Security Policy

Before you can run the solution, you must grant full trust to the assembly in your .NET Framework 2.0 security policy. This walkthrough uses the Code Access Security Policy tool (Caspol.exe) to grant full trust to the assembly.

For more information about using Caspol.exe, see Code Access Security Policy Tool (Caspol.exe) and Configuring Security Policy Using the Code Access Security Policy Tool (Caspol.exe).

Security noteSecurity Note:

These are basic steps for setting a security policy based on URL evidence for the purpose of completing this walkthrough. Do not use these steps to grant trust to assemblies in a real-world solution if you are not certain that the location is safe and secure. You should also base the security of a real-world solution on more evidence than the URL of the assembly. For more information, see Security Requirements to Run Office Solutions (2003 System).

To grant full trust to the assembly

  1. At the command prompt, type the following command to create a new code group that grants full trust to the assembly. Replace full assembly path with the full path of the assembly on the development computer—for example, C:\TestDeploy\WordDeployment.dll.

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

    The -n parameter specifies a name for the new code group. This parameter is not required, but specifying a label makes it easier to later identify and remove the new code group after you complete this walkthrough.

  2. Type yes when prompted to confirm that you want to perform the operation, and press ENTER.

  3. Open the document in the %SystemDrive%\TestDeploy folder and verify that the message appears.

  4. Click OK, and then close the document.

Next Steps

You can also deploy the document and the assembly to different folders on the same computer, or you can deploy the document and the assembly to a network folder. For more information, see the following walkthroughs:

See Also

Tasks

Walkthrough: Deploying a Document and an Assembly to Different Local Folders (2003 System)

Walkthrough: Deploying a Document to a Local Folder and an Assembly to a Network Folder (2003 System)

Walkthrough: Deploying a Document and an Assembly to a Network Folder (2003 System)

Walkthrough: Deploying a Document-Level Customization Using a Deployment Manifest (2003 System)

Walkthrough: Deploying a Document-Level Customization Using a Windows Installer File (2003 System)

Concepts

Deploying Office Solutions (2003 System)

Deploying Document-Level Customizations (2003 System)

Deployment Models (2003 System)