Ответ 1
Вы можете просто открыть " Project > Property > Signing" и снимите флажок "Подписать манифест ClickOnce".
Я тщательно изучил этот вопрос в stackoverflow, и я видел многочисленные ответы, но никто из них не работал для нас. Недавно мы купили сертификат подписи кода из comodo, который мы собираемся использовать для подписания нашего приложения С# WPF.net.
Мы выполнили инструкции следующий URL
и затем импортировали сертификат в визуальную студию в разделе "Свойства проекта → пение- > подписать сборку". Затем мы попытаемся создать проект и получить следующую ошибку:
Невозможно импортировать следующий файл ключей: comodo.pfx. Ключевой файл может быть защищен паролем. Чтобы исправить это, попробуйте снова импортировать сертификат вручную, чтобы установить сертификат в Сильное имя CSP со следующим именем контейнера: VS_KEY_xxxxxxxxxxxxxxx.
Мы нашли множество решений в Интернете и попробовали следующее:
Добавлен раздел в файле .csproj:
Скачан http://visualstudiogallery.msdn.microsoft.com/a83505c6-77b3-44a6-b53b-73d77cba84c8 и нажал кнопку "Применить исправление" на ошибке
Мы пока не добились успеха. Мы можем импортировать ключ просто отлично, используя пароль, чтобы мы знали, что пароль правильный. Мы также знаем, что это отлично подходит для подписания манифеста в публикации clickonce. Просто чтобы убедиться, что у нас не было никаких других проблем, мы отключили подпись cilckonce и просто пытаемся подписать сборку.
Вы можете просто открыть " Project > Property > Signing" и снимите флажок "Подписать манифест ClickOnce".
Я узнал, что Visual Studio, похоже, не очень хорошо обрабатывает подчиненные сертификаты.
Я попробовал несколько сертификатов на нескольких компьютерах (разные комбинации ОС /VS ) с теми же результатами.
Я наконец нашел это как обходной путь:
Подпишите сборку с помощью
signtool sign /f "[path to pfx]" /p [password] /v "[path to assembly]"
Создайте свой установщик с помощью mageUI (см. "" Развертывание приложения ClickOnce вручную")
Проблема с Visual Studio, похоже, не похожа на цепочку сертификатов. Это можно решить, импортировав/экспортировав сертификат без привязки. Следующая проблема решается с использованием certutil и экспорта с AT_SIGNATURE. Я смог импортировать его в VS и строить, однако, похоже, он не подписывает сборку.
У меня такая же ошибка. Выбрал его, выбрав Установить PFX из контекстного меню в проводнике Windows.
Лучшее решение, о котором я могу думать, это перейти в Project → Properties → Выделить всплывающее окно с сильным именем и выбрать "Создать" → Создать ключ, а затем перейти в раздел Сертификат сверху → щелчок Выберите "Файл" и выберите новый созданный ключ → "Создать решение" → "Опубликовать".
Другой "работал на меня"...
Щелкните правой кнопкой мыши на PFX в проводнике Windows, выберите "Установить PFX", а в мастере предоставлен пароль. Затем в свойствах проекта в VS в разделе "Подписание" выберите "Изменить пароль" и введите пароль повторно. До этого будет работать только VS, как администратор.
Для меня после работы, Сначала установите сертификат, дважды щелкнув по нему. Затем,
Свойства проекта → Подписание → Если отмечен флажок "Подписать манифест ClickOnce" → нажмите "Выбрать из файла" и выберите файл .pfx, и он должен отобразить все действительные данные сертификата, например "Выдано, выпущено, намеренно" Цель и т.д.
У меня была такая же проблема. Я создаю приложение с флэш-накопителя на многочисленных компьютерах и считаю, что это причина.
Я нашел успех с помощью метода "sn -i [comodo].pfx VS_KEY_xxxxxxxxxxxxx". Я сделал следующие шаги:
Когда я попробовал это без запуска команды "Командная строка разработчика" в качестве администратора, я получаю текст отображения справки при запуске "sn -i mykey.pfx VS_KEY_xxxxxxxxxxxxx", и это не сработает. Трюк состоял в том, чтобы убедиться, что я запустил приглашение разработки в качестве администратора.
В контексте я использую VS Community 2013.5, Window 7 x64 Professional и .NET Framework 4.7
используя детали, оставленные @VoteCoffee, это сработало
Перешел со старого ноутбука на новый, и его нужно было перенастроить