Share via


Procédure pas à pas : déploiement d'un document et d'un assembly dans des dossiers locaux différents (Office System 2003)

Mise à jour : novembre 2007

S'applique à

Les informations dans cette rubrique s'appliquent uniquement aux projets Visual Studio Tools pour Office et versions de Microsoft Office spécifiés.

Type de projet

  • Projets au niveau du document

Version de Microsoft Office

  • Microsoft Office 2003

Pour plus d'informations, consultez Fonctionnalités disponibles par type d'application et de projet.

Cette procédure pas à pas montre comment déployer une personnalisation au niveau du document de sorte que le document et l'assembly soient situés dans des dossiers différents sur l'ordinateur de l'utilisateur final. Ce type de déploiement est appelé modèle de déploiement local/local.

Pour plus d'informations sur les options disponibles pour le déploiement de votre solution, consultez Modèles de déploiement (Office System 2003). Pour plus d'informations sur les personnalisations au niveau du document, consultez Architecture des personnalisations au niveau du document.

Cette procédure pas à pas illustre les tâches suivantes :

  • Édition du manifeste d'application incorporé dans un document pour pointer vers l'assembly.

  • Octroi d'un niveau de confiance totale à un assembly de solution Visual Studio Tools pour Office situé dans un dossier local.

Composants requis

Vous avez besoin des composants suivants pour exécuter cette procédure pas à pas :

  • Visual Studio Tools pour Office (un composant facultatif de Visual Studio 2008 Professional et Visual Studio Team System).

  • Microsoft Office Word 2003 ou Microsoft Office Excel 2003.

    Remarque :

    Cette procédure pas à pas suppose que vous déployez une solution Word. Si vous souhaitez exécuter la procédure pas à pas avec une solution Excel, remplacez le nom du projet Word par le nom de votre projet Excel dans tous les exemples de code.

  • Droits d'administrateur sur l'ordinateur de développement pour que vous puissiez définir la stratégie de sécurité.

Création d'une solution à déployer

La première étape consiste à créer une solution Visual Studio Tools pour Office de base à déployer. Si vous possédez déjà une solution que vous souhaitez déployer, vous pouvez ignorer cette section et passer à l'étape « Déploiement de la solution ».

Pour créer une solution à déployer

  1. Créez un projet de document Word avec le nom WordDeployment, à l'aide du modèle de projet pour Office 2003.

    Dans l'Assistant, sélectionnez Créer un nouveau document. Pour plus d'informations, consultez Comment : créer des projets Visual Studio Tools pour Office.

  2. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur le fichier de code ThisDocument, puis cliquez sur Afficher le code.

  3. Ajoutez le code suivant au gestionnaire d'événements ThisDocument_Startup. Lorsque le document s'ouvre, ce code affiche un message qui permet de vérifier facilement si la solution a été déployée.

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

    Pour plus d'informations sur l'événement Startup, consultez Événements de projet Visual Studio Tools pour Office.

  4. Appuyez sur F5 pour générer et exécuter le projet. Vérifiez que le message apparaît.

Déploiement de la solution

Vous pouvez désormais déployer le document et l'assembly dans des dossiers différents sur l'ordinateur de développement.

Pour déployer la solution

  1. Créez des dossiers appelés TestDeployDocument et TestDeployAssembly à la racine du lecteur système Windows (%SystemDrive%). Par exemple, si votre lecteur système est C, les nouveaux dossiers sont C:\TestDeployDocument et C:\TestDeployAssembly.

  2. Copiez le document du dossier de sortie de génération (en général, dossier de projet\bin\debug ou dossier de projet\bin\release) vers le dossier %SystemDrive%\TestDeployDocument, et copiez l'assembly du dossier de sortie de génération vers le dossier %SystemDrive%\TestDeployAssembly.

  3. Ouvrez le document dans le dossier %SystemDrive%\TestDeployDocument. Un message d'erreur indique que l'assembly de personnalisation est introuvable ou n'a pas pu être chargé.

    Lorsque vous générez votre solution, le document est supposé être dans le même dossier que l'assembly. L'emplacement de l'assembly est stocké dans un manifeste d'application incorporé dans le document. Si vous déployez le document et l'assembly dans des dossiers différents, vous devez éditer le manifeste d'application incorporé pour indiquer le nouveau chemin d'accès de l'assembly. La section suivante explique cette étape.

  4. Quittez Word.

  5. Fermez la solution dans Visual Studio.

    Assurez-vous que le document n'est pas ouvert dans une instance de Word ou dans le Concepteur de projets. S'il est ouvert, la tentative d'accès au document dans l'étape suivante à l'aide de ServerDocument échouera.

Édition du manifeste d'application incorporé

Utilisez la classe ServerDocument pour éditer le manifeste d'application incorporé dans le document afin qu'il pointe vers le nouvel emplacement de l'assembly de personnalisation. Le code qui utilise ServerDocument pour éditer le manifeste d'application incorporé doit être en dehors de l'assembly du projet Visual Studio Tools pour Office associé au document que vous êtes en train de déployer.

Pour éditer le manifeste d'application incorporé

  1. Créez un projet Application console. Pour plus d'informations, voir Comment : créer des solutions et des projets.

  2. Ajoutez au nouveau projet une référence à l'assembly Microsoft.VisualStudio.Tools.Applications.Runtime.dll.

  3. Ajoutez l'instruction using (C#) ou l'instruction Imports (Visual Basic) suivante au début du fichier de code Program.cs ou Module1.vb.

    Imports Microsoft.VisualStudio.Tools.Applications.Runtime
    
    using Microsoft.VisualStudio.Tools.Applications.Runtime;
    
  4. Ajoutez le code suivant dans la méthode Main pour mettre à jour le manifeste d'application incorporé. Remplacez chemin d'accès de document complet par le chemin d'accès complet du document dans son emplacement de déploiement sur l'ordinateur de développement (par exemple, C:\TestDeployDocument\WordDeployment.doc). Remplacez chemin d'accès d'assembly complet par le chemin d'accès complet de l'assembly dans le dossier dans lequel il sera déployé (par exemple, 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. Appuyez sur F5 pour générer et exécuter le projet. L'application console met à jour le chemin d'accès de l'assembly dans le manifeste d'application incorporé, puis se ferme.

  6. Fermez le projet d'application console.

  7. Ouvrez le document dans le dossier %SystemDrive%\TestDeployDocument. Un message d'erreur indique que la stratégie de sécurité .NET actuelle n'autorise pas l'exécution de la personnalisation. Cela est dû au fait que vous n'avez pas encore octroyé un niveau de confiance totale à l'assembly.

  8. Quittez Word.

    Toutes les instances de Word doivent être fermées, sinon les modifications de stratégie de sécurité n'entreront pas en vigueur.

Définition de la stratégie de sécurité

Pour permettre l'exécution de la solution, vous devez octroyer un niveau de confiance totale à l'assembly dans votre stratégie de sécurité .NET Framework 2.0. Cette procédure pas à pas utilise l'outil Stratégie de sécurité d'accès du code (Caspol.exe) pour octroyer un niveau de confiance totale à l'assembly. Pour plus d'informations sur l'utilisation de Caspol.exe, consultez Outil Code Access Security Policy Tool (Caspol.exe) et Configuration de la stratégie de sécurité à l'aide de l'outil Code Access Security Policy Tool (Caspol.exe).

Note de sécurité :

Il s'agit d'étapes de base qui permettent de définir une stratégie de sécurité basée sur la preuve URL pour exécuter cette procédure pas à pas. N'utilisez pas ces étapes pour octroyer un niveau de confiance totale aux assemblys dans une solution réelle si vous n'êtes pas certain que l'emplacement est sûr et sécurisé. De plus, vous devez baser la sécurité d'une solution réelle sur une preuve plus pertinente que l'URL de l'assembly. Pour plus d'informations, consultez Spécifications de sécurité pour exécuter des solutions Office (Office System 2003).

Pour octroyer un niveau de confiance totale à l'assembly

  1. À l'invite de commandes, tapez la commande suivante pour créer un groupe de codes qui octroie un niveau de confiance totale à l'assembly.

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

    Remplacez chemin d'accès de l'assembly complet par le chemin d'accès complet de l'assembly sur l'ordinateur de développement (par exemple, C:\TestDeployAssembly\WordDeployment.dll).

    Le paramètre -n indique un nom pour le nouveau groupe de codes. Ce paramètre n'est pas obligatoire, mais le fait d'indiquer une étiquette facilite l'identification et la suppression du nouveau groupe de codes une fois cette procédure pas à pas terminée.

  2. À l'invite, tapez oui pour confirmer que vous souhaitez exécuter l'opération, puis appuyez sur la touche ENTRÉE.

  3. Ouvrez le document dans le dossier %SystemDrive%\TestDeployDocument et vérifiez que le message apparaît.

Étapes suivantes

Vous pouvez également déployer le document et l'assembly dans le même dossier local, ou les déployer dans un dossier réseau. Pour plus d'informations, consultez les procédures pas à pas suivantes :

Voir aussi

Tâches

Procédure pas à pas : déploiement d'un document et d'un assembly dans un dossier local (Office System 2003)

Procédure pas à pas : déploiement d'un document dans un dossier local et d'un assembly dans un dossier réseau (Office System 2003)

Procédure pas à pas : déploiement d'un document et d'un assembly dans un dossier réseau (Office System 2003)

Procédure pas à pas : déploiement d'une personnalisation au niveau du document à l'aide d'un manifeste de déploiement (Office System 2003)

Procédure pas à pas : déploiement d'une personnalisation au niveau du document à l'aide d'un fichier Windows Installer (Office System 2003)

Concepts

Déploiement de solutions Office (Office System 2003)

Déploiement de personnalisations au niveau du document (Office System 2003)

Modèles de déploiement (Office System 2003)