2010-11-21 17 views
13

Ich weiß nicht, wo ich falsch gelaufen bin. Wenn ich es erstelle, sucht es nach dem Standardpfad für das DLL, um mich anzumelden. Obwohl ich den Pfad anzeigte.Kryptographischer Fehler beim Signieren der Baugruppe in Visual Studio

Ich habe meine .SNK-Datei an der gleichen Stelle wie die DLL erstellt und gespeichert.

//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")] 

bekomme ich folgende Fehlermeldung:

"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

Ist das Snk tatsächlich in D: \ Services \ bin \ ErrorCollection.snk? –

+0

ja ich habe es gesehen. Es befindet sich genau dort, wo ich es angegeben habe. –

+0

Gibt es eine Erklärung, warum diese Frage geschlossen wurde? Damit ich eine Idee habe, was ich nicht posten soll. – Mahesh

Antwort

2

Der Weg zur Baugruppe relativ sein muss.

Bitte überprüfen Sie die folgenden Kenntnisse base.

versuchen daher

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

so etwas wie (hier ich es gehe davon aus vier Ebenen bis zu Ihrem Root-d-Laufwerk ist)

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

1

Probieren Sie neue snk mit demselben Namen erstellen und die alte

für m das funktionierte überschreiben e. Raten Sie das Snk wurde irgendwie beschädigt

8

Überprüfen Sie die Zugriffsrechte auf den Ordner Schlüssel auf dem lokalen Computer und geben Sie Berechtigungen für den VS-Benutzer.

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

Ich hatte das gleiche Problem und löste es in ähnlicher Weise siehe https://github.com/nosami/Omnisharp/issues/150 – vexe

+0

Perfekter Abschluss. Ich habe den Besitzer in die lokale Gruppe Administratoren dieses Ordners geändert und vergessen, ihnen Berechtigungen hinzuzufügen. – Gandarez

0

können Sie auch deaktivieren nur Unterzeichnung in Ihrem Visual Studio

2

Für mich ist dieses Problem geschah nach 10. Die Lage der Machine Upgrade auf Windows dann an einem anderen Ort befindet sich nämlich

C : \ ProgramData \ Microsoft \ Crypto \ RSA

RightClick die MachineKeys und stellen Sie sicher, dass alle Berechtigungen festgelegt sind.

+0

Für zukünftige Leser .... diese Antwort löste mein Problem. Aber ich lief auch in ein "Gewähren von Berechtigungen" Problem .... wie aus dieser URL ersichtlich. https://social.technet.microsoft.com/Forums/windowsserver/en-US/db04b57c-7684-4e52-8e1a-5e4407f6e2ab/windows-2012-failed-to-enumer-objects-in-the-container-access- verweigert? forum = winserver8gen – granadaCoder

+0

Sie können dieses Problem nicht bekommen. aber wenn Sie das tun, folgen Sie der URL in meinem vorherigen Kommentar oder Internet-Suche nach dem Ausdruck "Fehler beim Auflisten von Objekten im Container.Zugriff verweigert "aber nachdem ich über das Problem der Erteilung von Berechtigungen hinausgekommen bin ... hat diese Antwort den Tag gerettet. – granadaCoder

1

Rechts auf Ihrem Projekt klicken -> Eigenschaften -> Überprüfen „um die Montage Anmeldung“

1

Was es für mich gerichtet war, um sicherzustellen, dass ich Visual Studio als Administrator ausgeführt wurde.

Verwandte Themen