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

"Не удалось найти манифест подписывающего сертификата в хранилище сертификатов" - даже если добавить новый ключ

Я не могу создавать проекты с сильной подписью подписи - всегда появляется сообщение в заголовке.

Да, проект был первоначально скопирован с другой машины. Однако, даже если я добавлю новый ключ на вкладке "Подписание" в "Свойства проекта", эта ошибка все еще отображается.

Я попытался запустить Visual Studio в качестве администратора и попытался вручную добавить ключи в хранилище сертификатов Windows.

Help!

Изменить: я не получаю эту ошибку с новым проектом, но мне бы очень хотелось, чтобы этот существующий проект работал. Это не сработает, даже если я создам новый сертификат!

4b9b3361

Ответ 1

Наконец-то я нашел решение и надеюсь, что это тоже поможет кому-то другому.

  • Отредактируйте файл .csproj для рассматриваемого проекта.
  • Удалите следующие строки кода:

    <PropertyGroup>
       <ManifestCertificateThumbprint>...........</ManifestCertificateThumbprint>
    </PropertyGroup>
    <PropertyGroup>
       <ManifestKeyFile>xxxxxxxx.pfx</ManifestKeyFile>
    </PropertyGroup>
    <PropertyGroup>
       <GenerateManifests>true</GenerateManifests>
    </PropertyGroup>
    <PropertyGroup>
       <SignManifests>false</SignManifests>
    </PropertyGroup>
    

Ответ 2

Перейдите в свой проект "Свойства" в визуальной студии. Затем перейдите на вкладку подписи.

Затем убедитесь, что знак "Щелкнуть мышью" Когда манифест отключен.


Обновленные инструкции:

В вашем обозревателе решений:

  • щелкните правой кнопкой мыши по вашему проекту
  • щелкните по свойствам
  • обычно с левой стороны, выберите вкладку "Подписывание"
  • отметьте флажком SignOnce
  • Убедитесь, что вы сохранили!

введите описание изображения здесь

Ответ 3

Попробуйте следующее: Щелкните правой кнопкой мыши на своем проекте → Перейдите в свойства → Нажмите подпись, которая находится в левой части экрана → Снимите отметку знака щелчок один раз показывает → Сохранить и построить

Ответ 4

  • Откройте файл .csproj в Блокноте.
  • Удалите следующую информацию, связанную с сертификатом подписи в хранилище сертификатов.

    <PropertyGroup>
      <ManifestCertificateThumbprint>xxxxx xxxxxx</ManifestCertificateThumbprint>
      <ManifestKeyFile>xxxxxxxx.pfx</ManifestKeyFile>
    <GenerateManifests>true</GenerateManifests>
    <SignManifests>false</SignManifests>
    </PropertyGroup>
    

Ответ 5

Перейдите в свои проекты "Свойства" в визуальной студии. Затем перейдите на вкладку подписи.

Затем убедитесь, что знак "Щелкнуть мышью" Когда манифест отключен.

ИЛИ

1.Откройте файл .csproj в Блокноте.

2.Удалить следующую информацию, связанную с сертификатом подписи в хранилище сертификатов        xxxxx xxxxxx     xxxxxxxx.pfx   правда   ложный   `

Работал для меня.

Ответ 6

Предполагая, что это персональный сертификат, созданный окнами в системе, с которой вы скопировали свой проект, вы можете использовать диспетчер сертификатов в системе, в которой сейчас находится проект, и импортировать сертификат. Запустите диспетчер сертификатов (certmgr) и выберите персональные сертификаты, затем щелкните правой кнопкой мыши под списком существующих сертификатов и выберите импорт из задач. Используйте поиск, чтобы найти .pfx в проекте (.pfx из предыдущей системы, которую вы скопировали с проектом). Он должен находиться в подкаталоге с тем же именем, что и каталог проекта. Я знаком с С# и VS, поэтому, если это не ваша среда, возможно,.pfx будет в другом месте или, возможно, это предложение не применимо. После импорта вы получите сообщение о состоянии. Если вы преуспели, ошибка сертификата компиляции должна исчезнуть. certmgr screen

Ответ 7

Чтобы подписать сборку с сильным именем, используя атрибуты

Откройте AssemblyInfo.cs$(SolutionDir)\Properties)

AssemblyKeyFileAttribute или AssemblyKeyNameAttribute, указав имя файла или контейнера, который содержит пару ключей, которые будут использоваться при подписании сборки с сильным именем.

добавьте следующий код:

[assembly:AssemblyKeyFileAttribute("keyfile.snk")]

Ответ 8

Недостаточно вручную добавлять ключи в хранилище сертификатов Windows. Сертификат содержит только подписанный открытый ключ. Вы также должны импортировать закрытый ключ, связанный с открытым ключом сертификата. Файл .pfx содержит как открытый, так и закрытый ключи в одном файле. Это то, что вам нужно импортировать.

Ответ 9

Вы сказали, что скопировали файлы с другого компьютера. После того, как вы их скопировали, вы "Разблокировали" их? В частности, файл .snk должен быть проверен, чтобы убедиться, что он не помечен как небезопасный.