Подтвердить что ты не робот

Невозможно импортировать следующую ошибку ключевого файла при импорте pfx

Я тщательно изучил этот вопрос в stackoverflow, и я видел многочисленные ответы, но никто из них не работал для нас. Недавно мы купили сертификат подписи кода из comodo, который мы собираемся использовать для подписания нашего приложения С# WPF.net.
Мы выполнили инструкции следующий URL

и затем импортировали сертификат в визуальную студию в разделе "Свойства проекта → пение- > подписать сборку". Затем мы попытаемся создать проект и получить следующую ошибку:

Невозможно импортировать следующий файл ключей: comodo.pfx. Ключевой файл может быть защищен паролем. Чтобы исправить это, попробуйте снова импортировать сертификат вручную, чтобы установить сертификат в Сильное имя CSP со следующим именем контейнера: VS_KEY_xxxxxxxxxxxxxxx.

Мы нашли множество решений в Интернете и попробовали следующее:

  • Нажмите "Сменить пароль" и используйте один и тот же пароль во всех трех местах.
  • sn -i [comodo].pfx VS_KEY_xxxxxxxxxxxxx
  • попытался преобразовать его в файл snk без пароля и использовать это вместо .pfx
  • Попробовал запустить визуальную студию как администратор и импортировал ключ
  • Попробовал создать очень простой проект barebones и подписаться с ним
  • Tried visual studio 2010, а также 2012
  • Мы попытались добавить к сборке следующее: [сборка: AssemblyKeyFile ( "путь к ключевому файлу" )]
  • Добавлено событие в postbuild "C:\Program Files (x86)\Microsoft SDK\Windows\v7.0A\Bin\signtool.exe" sign/f "$ (ProjectDir) [keyfile].pfx" /p [thepassword ]/v "$ (ProjectDir) obj\Release\$(TargetFileName)"
  • Добавлен раздел в файле .csproj:

  • Скачан http://visualstudiogallery.msdn.microsoft.com/a83505c6-77b3-44a6-b53b-73d77cba84c8 и нажал кнопку "Применить исправление" на ошибке

Мы пока не добились успеха. Мы можем импортировать ключ просто отлично, используя пароль, чтобы мы знали, что пароль правильный. Мы также знаем, что это отлично подходит для подписания манифеста в публикации clickonce. Просто чтобы убедиться, что у нас не было никаких других проблем, мы отключили подпись cilckonce и просто пытаемся подписать сборку.

4b9b3361

Ответ 1

Вы можете просто открыть " Project > Property > Signing" и снимите флажок "Подписать манифест ClickOnce".

Ответ 2

Я узнал, что Visual Studio, похоже, не очень хорошо обрабатывает подчиненные сертификаты.
Я попробовал несколько сертификатов на нескольких компьютерах (разные комбинации ОС /VS ) с теми же результатами.
Я наконец нашел это как обходной путь:

Проблема с Visual Studio, похоже, не похожа на цепочку сертификатов. Это можно решить, импортировав/экспортировав сертификат без привязки. Следующая проблема решается с использованием certutil и экспорта с AT_SIGNATURE. Я смог импортировать его в VS и строить, однако, похоже, он не подписывает сборку.

Ответ 3

У меня такая же ошибка. Выбрал его, выбрав Установить PFX из контекстного меню в проводнике Windows.

Ответ 4

Лучшее решение, о котором я могу думать, это перейти в Project → Properties → Выделить всплывающее окно с сильным именем и выбрать "Создать" → Создать ключ, а затем перейти в раздел Сертификат сверху → щелчок Выберите "Файл" и выберите новый созданный ключ → "Создать решение" → "Опубликовать".

Ответ 5

Другой "работал на меня"...

Щелкните правой кнопкой мыши на PFX в проводнике Windows, выберите "Установить PFX", а в мастере предоставлен пароль. Затем в свойствах проекта в VS в разделе "Подписание" выберите "Изменить пароль" и введите пароль повторно. До этого будет работать только VS, как администратор.

Ответ 6

Для меня после работы, Сначала установите сертификат, дважды щелкнув по нему. Затем,

Свойства проекта → Подписание → Если отмечен флажок "Подписать манифест ClickOnce" → нажмите "Выбрать из файла" и выберите файл .pfx, и он должен отобразить все действительные данные сертификата, например "Выдано, выпущено, намеренно" Цель и т.д.

Ответ 7

У меня была такая же проблема. Я создаю приложение с флэш-накопителя на многочисленных компьютерах и считаю, что это причина.

Я нашел успех с помощью метода "sn -i [comodo].pfx VS_KEY_xxxxxxxxxxxxx". Я сделал следующие шаги:

  • Запустите "Командная строка разработчика" в качестве администратора (находится в меню Пуск- > Все программы- > Visual Studio- > Инструменты)
  • Перейдите в свой каталог ключей (для меня это был корень моего каталога проекта, а не каталога решений)
  • Выполнить "sn -i mykey.pfx VS_KEY_xxxxxxxxxxxxx" (mykey.pfx и VS_KEY_xxxxxxxxxxxxx находятся в сообщении об ошибке сборки)
  • Введите пароль, если требуется

Когда я попробовал это без запуска команды "Командная строка разработчика" в качестве администратора, я получаю текст отображения справки при запуске "sn -i mykey.pfx VS_KEY_xxxxxxxxxxxxx", и это не сработает. Трюк состоял в том, чтобы убедиться, что я запустил приглашение разработки в качестве администратора.

В контексте я использую VS Community 2013.5, Window 7 x64 Professional и .NET Framework 4.7

Ответ 8

  1. Перейдите в Свойства проекта → Подписание
  2. Пожалуйста, выберите соответствующий *.pfx файл из выпадающего списка.
  3. Введите предыдущий пароль, используемый для подписи кода. (пароль: спросите человека, который подписал сборку и создал самоподписанные сертификаты и подписанный код)
  4. (необязательно). Он автоматически добавляет ваш сертификат в список доверенных. Это можно увидеть в окне консоли управления (запустите команду MMC и добавьте оснастку сертификата, чтобы увидеть сертификат)

enter image description here

Ответ 9

используя детали, оставленные @VoteCoffee, это сработало

Перешел со старого ноутбука на новый, и его нужно было перенастроить