Como: Adicionar ou Remover entradas de lista de inclusão

O programa de instalação para soluções do Office pode adicionar entradas da lista de inclusão, quando a solução que está sendo instalada não tem um certificado confiável. O programa de instalação exibe um prompt e os usuários podem responder e indicar que a solução deve ser confiável. Se você deseja adicionar a sua solução à lista de inclusão do usuário sem avisar o usuário, você pode programaticamente adicionar uma entrada da lista de inclusão. Para obter informações sobre listas de inclusão, consulte Confiar em soluções do Office, usando listas de inclusão.

Aplicável a: As informações neste tópico se aplicam a projetos de nível de documento e projetos de nível de aplicativo para Microsoft Office 2010 e o sistema 2007 do Microsoft Office. Para obter mais informações, consulte Recursos disponíveis pelo aplicativo do Office e o tipo de projeto.

Os procedimentos a seguir usam aplicativos de console para modificar a lista de inclusão. Você deve evitar a modificação do código para aceitar a entrada do usuário.

link para vídeo Para obter uma versão de vídeo deste tópico, consulte vídeo How to: Adicionar ou remover entradas da lista de inclusão.

Adicionando entradas à lista de inclusão

Adicionar AddInSecurityEntry itens para o UserInclusionList usando o Add(AddInSecurityEntry) método.

Para adicionar uma solução à lista de inclusão

  1. Criar uma Visual Basic ou C# Visual console application ou classe biblioteca voltado para o.NET Framework 3.5.

    ObservaçãoObservação

    Se você estiver implantando uma solução do Office usando o Windows Installer, você pode instalar soluções do Office no diretório arquivos de programa e evitar ter que criar uma entrada da lista de inclusão.

  2. Adicione uma referência ao Microsoft.VisualStudio.Tools.Office.Runtime.v10.0.

  3. Abra o arquivo para edição de Module1. vb ou Program. cs e adicione o seguinte Imports ou using a instrução na parte superior do arquivo.

    Imports Microsoft.VisualStudio.Tools.Office.Runtime.Security
    
    using Microsoft.VisualStudio.Tools.Office.Runtime.Security;
    
  4. Abra o manifesto de implantação da solução do Office, você está adicionando à lista de inclusão e localize o RSAKeyValue elemento que aparece sob o nó de StrongNameSignature.

  5. Cópia do RSAKeyValue elemento, incluindo todos os elementos filho e o RSAKeyValue marcas, para a área de transferência.

  6. Adicione o seguinte código para o Main método e substituir PublicKey com o texto copiado do manifesto de implantação e a URI de amostra com a localização de seu manifesto de implantação.

    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. Crie o aplicativo.

  8. Execute o aplicativo no computador que está executando o Visual Studio Tools for Office solução. A solução com o manifesto de implantação é representado por solutionLocation é adicionado à lista de inclusão.

Remover entradas da lista de inclusão

Remover entradas usando o Remove(Uri) método de UserInclusionList classe.

Para remover uma solução a partir da lista de inclusão

  1. Criar uma Visual Basic ou C# Visual console application ou classe biblioteca voltado para o.NET Framework 3.5.

  2. Adicione uma referência ao Microsoft.VisualStudio.Tools.Office.Runtime.v10.0.

  3. Abra o arquivo de código para edição e adicione o seguinte Imports ou using a instrução na parte superior do arquivo.

    Imports Microsoft.VisualStudio.Tools.Office.Runtime.Security
    
    using Microsoft.VisualStudio.Tools.Office.Runtime.Security;
    
  4. Adicione o seguinte código para o Main método e substituir a amostra de URI com o local do manifesto de implantação.

    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. Crie o aplicativo.

  6. Execute o aplicativo no computador que está executando o Visual Studio Tools for Office solução. A solução com o manifesto de implantação é representado por solutionLocation é removido da lista de inclusão.

Consulte também

Conceitos

Confiar em soluções do Office, usando listas de inclusão

Outros recursos

Protegendo as soluções do Office