Почему я получаю "Не удалось найти манифест подписывающего сертификата в хранилище сертификатов" в приложении Excel Addin?
У меня есть проект надстройки Excel, который был создан пару лет назад в Visual Studio 2008. Он внес некоторые изменения, поэтому я обновился до Visual Studio 2010 (единственная среда IDE, которую я могу использовать). Не уверен, что это вызывает проблему, но это справочная информация.
Когда я проверяю код и компилирую его, я получаю сообщение об ошибке "Ошибка 1 Не удалось найти сертификат подписывания манифеста в хранилище сертификатов".
Может ли кто-нибудь сказать мне, что это значит и как его исправить?
Ответы
Ответ 1
Вам необходимо повторно добавить этот сертификат на свой компьютер или выбрать другой сертификат.
Чтобы выбрать другой сертификат или заново создать его, перейдите на страницу свойств проекта, нажмите вкладку "Подписание" и
- Нажмите "Выбрать из магазина"
- Нажмите "Выбрать из файла"
- Нажмите "Создать тестовый сертификат"
Как только это будет сделано, вы сможете снова создать его.
Ответ 2
Я нашел это решение, которое решило проблему для меня: удаление всех записей в вашем *.csproj
, которые попадают в:
<manifestcertificatethumbprint>...</manifestcertificatethumbprint>
<manifestkeyfile>...</manifestkeyfile>
<generatemanifests>...</generatemanifests>
<signmanifests>...</signmanifests>
Ответ 3
Быстрое решение для меня: снять флажок "Подписать манифест ClickOnce" в: Project → (имя проекта) Properties → вкладка Signing
Ответ 4
Когда проект был первоначально создан, на вкладке подписания свойств проекта был добавлен сертификат подписи с однократной подпиской. Это выражает манифест click-once при его создании. Между тем и сейчас этот сертификат больше не доступен. Либо это был не тот компьютер, на котором вы его первоначально построили, либо как-то его убрали. Вам необходимо повторно добавить этот сертификат на свой компьютер или выбрать другой сертификат.
Ответ 5
Добавление нового сертификата разрешило эту проблему для меня. Страница свойств → подпись → Нажмите Создать сертификат теста
Ответ 6
Убедитесь, что вы скопировали файлы .pfx
в репозиторий.
Я только что нашел *.pfx
по умолчанию .gitignore
.
Прокомментируйте это (#
) и зафиксируйте изменения. Затем вытащите репозиторий и перестройте.
Ответ 7
Не забудьте нажать эти изменения в GitHub, потому что Дженкинс только вытаскивает источник из GitHub.
Ответ 8
Проблема с ошибочными остальными записями в файле .csproj все еще встречается с VS2015update3 и может также возникать, если вы пытаетесь изменить сертификат подписи для другого (даже если это один, сгенерированный с использованием опции "новый" в сертификате выбор выпадающего списка).
Совет в принятом ответе (отметьте как не подписанный, сохраните, выгрузите проект, отредактируйте .csproj, удалите свойства, относящиеся к старым сертификатам/отпечаткам/ключам и перезагрузите проект, установите сертификат) является надежным.
Ответ 9
Я создаю новый ключ, мне нужно было найти в csproj старый ключ и выполнить его рефакторинг.