Por que estou recebendo "Não foi possível encontrar o certificado de assinatura de manifesto no repositório de certificados" no meu suplemento do Excel?


216

Eu tenho um projeto de suplemento do Excel que foi criado há alguns anos no Visual Studio 2008. Há algumas alterações a serem feitas, por isso atualizei para o Visual Studio 2010 (o único IDE que posso usar). Não tenho certeza se isso está causando o problema, mas são informações básicas.

Ao fazer o check-out do código e compilá-lo, recebo o erro "Erro 1 Não foi possível encontrar o certificado de assinatura de manifesto no armazenamento de certificados".

Alguém pode me dizer o que isso significa e como corrigi-lo?

Respostas:


250

Você precisa adicionar novamente esse certificado à sua máquina ou escolher outro certificado.

Para escolher outro certificado ou recriar um, vá para a página de propriedades do Projeto, clique na guia Assinatura e

  • Clique em Selecionar da loja
  • Clique em Selecionar do arquivo
  • Clique em Criar certificado de teste

Depois que uma dessas opções estiver pronta, você poderá construí-la novamente.


134
Em Project's properties pagevocê pode ir para Signing tab, em seguida, desmarque a caixa de seleção "Sinal os manifestos ClickOnce".
Rubens Mariuzzo

10
@RubensMariuzzo - não se você realmente quiser assiná-lo #
Matt Wilko 15/01

A desmarcação é impossível para os Suplementos do Office e será verificada novamente.
it3xl

1
Como a operação "Criar certificado de teste" pode ser realizada em um servidor de compilação?
Ryanwebjackson 06/06/19

138

Encontrei esta solução que resolveu o problema para mim: Removendo todas as entradas no seu *.csprojque se enquadram em:

<manifestcertificatethumbprint>...</manifestcertificatethumbprint>
<manifestkeyfile>...</manifestkeyfile>
<generatemanifests>...</generatemanifests>
<signmanifests>...</signmanifests>

1
Isso é necessário quando então a aplicação costumava ser ClickOnce, mas não é mais (caixa acinzentada no separador Assinatura)
Dan Bechard

1
também funcionou para mim. aparentemente, havia algumas sobras no arquivo do projeto de algumas experiências que fizemos que precisavam ser limpas manualmente. BTW - Eu também tive que remover o arquivo .snk do projeto. para mim foi: remover .snk, desativar a assinatura, editar o arquivo do projeto, recarregar o projeto e ativar a assinatura.
OSH

Aparentemente necessário, se você já verificou o ClickOnce e depois mudou para Assinar montagem.
Roland

1
Esta é a melhor resposta.
Homam

3
Desmarcar a opção "Assinando o manifesto ClientOnce" nem sempre funciona. A solução é remover as linhas mencionadas de seus arquivos csproj
néctar

98

Uma solução rápida para começar foi desmarcar a opção "Assinar os manifestos do ClickOnce" em: Projeto -> (nome do projeto) Propriedades -> guia Assinatura


1
Eu tive que desmarcar ambos Sign the ClickOnce manifestse Sign the assemblycaixas de seleção na guia de assinatura nas propriedades do projeto para se livrar do problema. Eu não estava usando nenhuma assinatura.
RBT

13

Quando o projeto foi criado originalmente, o certificado de assinatura clique uma vez foi adicionado na guia de assinatura das propriedades do projeto. Isso assina o manifesto de clique quando você o cria. Entre então e agora, esse certificado não está mais disponível. Ou essa não foi a máquina em que você a montou originalmente ou foi limpa de alguma forma. Você precisa adicionar novamente esse certificado à sua máquina ou escolher outro certificado.


24
"Você precisa adicionar novamente esse certificado à sua máquina ou escolher outro certificado." Se você souber como adicionar o certificado, seria muito útil indicar o como neste encadeamento ou um link para o como neste encadeamento. Como está, você responde é apenas meia resposta.

1
Página Propriedades do Projeto> Signingnas guias verticais> Clique em Create test certificate. E não se esqueça de confirmar um novo arquivo criado You.Project_TemporaryKey.pfxporque os .pfxarquivos geralmente são ignorados .
it3xl

Penso que esta solução é a única adequada para os projetos do Visula Studio Office.
it3xl

13

A adição de novo certificado resolveu esse problema para mim. Página de propriedades -> assinatura -> Clique em Criar certificado de teste


Existe uma maneira de fazer isso em um servidor de construção (via linha de comando)?
Ryanwebjackson 6/06

8

Certifique-se de confirmar os .pfxarquivos no repositório.

Acabei de encontrar *.pfxno meu padrão .gitignore. Comente (por #) e confirme as alterações. Em seguida, puxe o repositório e reconstrua.



0

O problema de sobras incorretas no arquivo .csproj ainda ocorre com o VS2015update3 e também pode ocorrer se você tentar alterar o certificado de assinatura por um diferente (mesmo que seja gerado usando a opção 'novo' na lista suspensa de seleção de certificado) . O conselho na resposta aceita (marcar como não assinado, salvar, descarregar projeto, editar .csproj, remover as propriedades relacionadas aos certificados / impressões digitais / chaves antigas e recarregar projeto, definir certificado) é confiável.


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.