Partager via


Comment : ajouter des entrées à la liste d'inclusion ou en supprimer (Office System 2007)

Le programme d'installation des solutions Office peut ajouter des entrées de liste d'inclusion lorsque la solution en cours d'installation n'a pas de certificat approuvé. Le programme d'installation affiche une invite permettant à l'utilisateur de répondre et d'indiquer que la solution doit être approuvée. Si vous souhaitez ajouter votre solution à la liste d'inclusion de l'utilisateur sans afficher d'invite, vous pouvez ajouter une entrée de liste d'inclusion par programmation. Pour plus d'informations sur les listes d'inclusion, consultez Octroi de niveaux de confiance à des solutions Office à l'aide de listes d'inclusion.

S'applique à : Les informations contenues dans cette rubrique s'appliquent aux projets de niveau document et de niveau application pour Microsoft Office 2010 et la version 2007 de Microsoft® Office System. Pour plus d'informations, consultez Fonctionnalités disponibles par type d'application et de projet Office.

Les procédures suivantes utilisent des applications console pour modifier la liste d'inclusion. Évitez de modifier le code pour accepter l'entrée d'utilisateur.

lien vers la vidéo Pour obtenir une version vidéo de cette rubrique, consultez Comment : ajouter des entrées à la liste d'inclusion ou en supprimer.

Ajout d'entrées à la liste d'inclusion

Ajoutez des éléments AddInSecurityEntry à UserInclusionList à l'aide de la méthode Add(AddInSecurityEntry).

Pour ajouter une solution à la liste d'inclusion

  1. Créez une application console Visual Basic ou Visual C#, ou une bibliothèque de classes qui cible .NET Framework 3.5.

    Notes

    Si vous déployez une solution Office à l'aide de Windows Installer, vous pouvez installer des solutions Office dans le répertoire Program Files et éviter ainsi d'avoir à créer une entrée dans la liste d'inclusion.

  2. Ajoutez une référence à Microsoft.VisualStudio.Tools.Office.Runtime.v10.0.

  3. Ouvrez le fichier Module1.vb ou Program.cs à modifier, puis ajoutez l'instruction Imports ou using suivante au début du fichier.

    Imports Microsoft.VisualStudio.Tools.Office.Runtime.Security
    
    using Microsoft.VisualStudio.Tools.Office.Runtime.Security;
    
  4. Ouvrez le manifeste de déploiement pour la solution Office que vous ajoutez à la liste d'inclusion et localisez l'élément RSAKeyValue qui apparaît sous le nœud StrongNameSignature.

  5. Copiez dans le Presse-papiers l'élément RSAKeyValue, y compris tous les éléments enfants et les balises RSAKeyValue.

  6. Ajoutez le code suivant à la méthode Main et remplacez CléPublique par le texte copié du manifeste de déploiement et l'exemple d'URI par l'emplacement de votre manifeste de déploiement.

    Dim publicKey As String = "<RSAKeyValue><Modulus>mUl8MhOil1fKLKYpHItsyCGNXxGJW74L8d4zOVwSvLDP1qoXF0lLqf/Ql8yO+31zuFbx8Aer3eQz9tcb/pz0NJREdbeOvxYa+nHTnR3j7rRUkmE8AKzvcG8BmTlgbprXaY0QTln8syHTC7yY5AA+xibwatFMpEpEBRqF5MmsGkE=</Modulus><Exponent>AQAB</Exponent></RSAKeyValue>"
    Dim solutionLocation As New _
        Uri("http://DeploymentServer/MySolution/MySolution.vsto")
    Dim entry As AddInSecurityEntry
    
    Try
        entry = New AddInSecurityEntry(solutionLocation, publicKey)
        UserInclusionList.Add(entry)
    
    Catch e As ArgumentNullException
        Console.WriteLine(("Exception: " + e.Message))
    End Try
    
    string publicKey = "<RSAKeyValue><Modulus></Modulus><Exponent>AQAB</Exponent></RSAKeyValue>";
    Uri solutionLocation = new Uri(@"http://DeploymentServer/MySolution/MySolution.vsto");
    
    AddInSecurityEntry entry;
    
    try
    {
        entry = new AddInSecurityEntry(solutionLocation, publicKey);
        UserInclusionList.Add(entry);
    }
    
    catch (ArgumentNullException e)
    {
        Console.WriteLine("Exception: " + e.Message);
    }
    
  7. Générez l'application.

  8. Exécutez l'application sur l'ordinateur qui exécute la solution Visual Studio Tools pour Office. La solution associée au manifeste de déploiement représenté par solutionLocation est ajoutée à la liste d'inclusion.

Suppression d'entrées de la liste d'inclusion

Supprimez des entrées à l'aide de la méthode Remove(Uri) de la classe UserInclusionList.

Pour supprimer une solution de la liste d'inclusion

  1. Créez une application console Visual Basic ou Visual C# ou une bibliothèque de classes qui cible .NET Framework 3.5.

  2. Ajoutez une référence à Microsoft.VisualStudio.Tools.Office.Runtime.v10.0.

  3. Ouvrez le fichier de code à modifier et ajoutez l'instruction Imports ou using suivante au début du fichier.

    Imports Microsoft.VisualStudio.Tools.Office.Runtime.Security
    
    using Microsoft.VisualStudio.Tools.Office.Runtime.Security;
    
  4. Ajoutez le code suivant à la méthode Main et remplacez l'exemple d'URI par l'emplacement de votre manifeste de déploiement.

    Dim solutionLocation As New _
        Uri("http://DeploymentServer/MySolution/MySolution.vsto")
    Try
        UserInclusionList.Remove(solutionLocation)
    
    Catch e As ArgumentNullException
        Console.WriteLine(("Exception: " + e.Message))
    End Try
    
    Uri solutionLocation = new Uri("http://DeploymentServer/MySolution/MySolution.vsto");
    
    try
    {
        UserInclusionList.Remove(solutionLocation);
    }
    
    catch (ArgumentNullException e)
    {
       Console.WriteLine("Exception: " + e.Message);
    }
    
  5. Générez l'application.

  6. Exécutez l'application sur l'ordinateur qui exécute la solution Visual Studio Tools pour Office. La solution associée au manifeste de déploiement représenté par solutionLocation est supprimée de la liste d'inclusion.

Voir aussi

Concepts

Octroi de niveaux de confiance à des solutions Office à l'aide de listes d'inclusion

Autres ressources

Sécurisation des solutions Office