2010-11-21 15 views
13

Nie wiem, gdzie popełniłem błąd. Kiedy go zbuduję, wyszukuje domyślną ścieżkę do zalogowania się przez DLL. Eventhough podałem ścieżkę.Błąd kryptograficzny podczas podpisywania zespołu w Visual Studio

Utworzony i zapisany został mój plik .snk w tej samej lokalizacji co biblioteka 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")] 

pojawia się następujący błąd:

"Cryptographic failure while signing assembly 'D:\Services\ErrorCollection\obj\Debug\ErrorCollection.dll' -- 'Error reading key file 'D:\Services\bin\ErrorCollection.snk' -- The system cannot find the file specified. ' ErrorCollection"

+0

Czy snk rzeczywiście znajduje się w D: \ Services \ bin \ ErrorCollection.snk? –

+0

tak, widziałem to. znajduje się dokładnie tam, gdzie ja wskazałem. –

+0

Czy istnieje wyjaśnienie, dlaczego to pytanie zostało zamknięte? Tak, że mam pomysł, co nie pisać. – Mahesh

Odpowiedz

2

Ścieżka musi być w stosunku do zespołu.

Proszę zapoznać się z poniższą wiedzą base.

Stąd spróbuj zmienić

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

być coś (tutaj jestem zakładając, że jest cztery poziomy aż do d napędu głównego)

@ ".. \ .. \ .. \ .. \ Services \ bin \ ErrorCollection.snk"

1

Spróbuj utworzyć nowy SNK o tej samej nazwie i nadpisanie starego

Ten pracował dla m mi. Odgadnięcie snk zostało uszkodzone w jakiś sposób.

8

Sprawdź prawa dostępu do folderu Keys na komputerze lokalnym i podaj uprawnienia użytkownikowi VS.

C:\Documents and Settings\All Users\Application Data\Microsoft\Crypto\RSA\MachineKeys 
+0

Miałem ten sam problem i rozwiązałem go w podobny sposób, patrz https://github.com/nosami/Omnisharp/issues/150 – vexe

+0

Doskonały wniosek. Zmieniłem właściciela na lokalną grupę Administratorzy tego folderu i zapomniałem dodać do nich uprawnienia. – Gandarez

0

można też po prostu wyłączyć podpisywanie w VisualStudio

2

Dla mnie ten problem się po uaktualnieniu do Windows 10. Umiejscowienie MachineKeys znajduje się wtedy w innym miejscu mianowicie

C : \ ProgramData \ Microsoft \ Crypto \ RSA

kliknij prawym przyciskiem myszy na MachineKeys i sprawdzić, czy wszystkie uprawnienia są ustawione.

+0

Dla przyszłych czytelników ... ta odpowiedź rozwiązała mój problem. ALE wpadłem również na problem "przyznawania uprawnień" .... widziany przez ten adres URL. https://social.technet.microsoft.com/Forums/windowsserver/en-US/db04b57c-7684-4e52-8e1a-5e4407f6e2ab/windows-2012-failed-to-enumerate-objects-in-container-access- denied? forum = winserver8gen – granadaCoder

+0

możesz nie dostać tego problemu z uprawnieniami do grantu. ale jeśli to zrobisz, podążaj za adresem URL w moim poprzednim komentarzu LUB wyszukaj w Internecie frazę "Nie można wyliczyć obiektów w kontenerze.Odmowa dostępu ", ale po rozwiązaniu problemu przyznawania uprawnień ... ta odpowiedź zaoszczędziła cały dzień. – granadaCoder

1

Kliknij prawym przyciskiem myszy na projekt -> Właściwości -> Sprawdź „Zaloguj zespół”

1

Co ustalone to było dla mnie, aby upewnić się, że został uruchomiony Visual Studio jako Administrator.

Powiązane problemy