Криптографическая ошибка при подписании сборки в Visual studio - PullRequest
13 голосов
/ 21 ноября 2010

Я не знаю, где я ошибся.Когда я собираю его, он ищет путь по умолчанию для DLL, чтобы войти. Даже если я указал путь.

Я создал и сохранил мой файл .snk в том же месте, что и DLL.

//Assembly info file for errorcollection

using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;

// General Information about an assembly is controlled through the following 
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("ErrorCollection")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("ErrorCollection")]
[assembly: AssemblyCopyright("Copyright ©  2010")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]

// Setting ComVisible to false makes the types in this assembly not visible 
// to COM components.  If you need to access a type in this assembly from 
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]

// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("2c17131b-0ae3-4146-a797-308f5958e819")]

// Version information for an assembly consists of the following four values:
//
//      Major Version
//      Minor Version 
//      Build Number
//      Revision
//
// You can specify all the values or you can default the Build and Revision Numbers 
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: System.Reflection.AssemblyKeyFile(@"D:\Services\bin\ErrorCollection.snk")]

Я получаю следующую ошибку:

"Криптографическая ошибка при подписании сборки" D: \ Services \ ErrorCollection \ obj \ Debug \ ErrorCollection.dll "-" Ошибка чтения файла ключа "D: \ Services \ bin \ ErrorCollection.snk '- система не может найти указанный файл.' ErrorCollection "

Ответы [ 7 ]

9 голосов
/ 19 августа 2014

Проверьте права доступа к папке «Ключи» на локальном компьютере и предоставьте разрешения пользователю VS.

C:\Documents and Settings\All Users\Application Data\Microsoft\Crypto\RSA\MachineKeys
5 голосов
/ 12 декабря 2015

Для меня эта проблема произошла после обновления до windows 10. Местоположение MachineKeys затем располагается в другом месте, а именно

C: \ ProgramData \ Microsoft \ Crypto \ RSA

Щелкните правой кнопкой мыши на MachineKeys и убедитесь, что все привилегии установлены.

2 голосов
/ 07 февраля 2011

Путь должен быть относительно сборки.

Пожалуйста, ознакомьтесь со следующими знаниями база .

Поэтому попробуйте изменить

@ "D: \ Services \ Bin \ ErrorCollection.snk"

что-то вроде (здесь я предполагаю, что до вашего корневого диска d четыре уровня)

@ ".. \ .. \ .. \ .. \ Services \ Bin \ ErrorCollection.snk"

1 голос
/ 30 ноября 2016

Что для меня исправило, так это то, что я работал с Visual Studio от имени администратора.

1 голос
/ 27 июля 2016

Щелкните правой кнопкой мыши по вашему проекту -> Свойства -> Отметьте «Подписать сборку»

1 голос
/ 02 августа 2012

Попробуйте создать новый snk с тем же именем и перезаписать старый

Это сработало для меня. Гадание на snk как-то испортилось

0 голосов
/ 03 июня 2015

Вы также можете просто отключить подпись в вашей visualstudio

...