Come importare un file snk generato con sn.exe in .NET?
-
29-09-2019 - |
Domanda
Ho creato un file di chiave con questo comando:
sn.exe -k 2048 Build.snk
Vorrei leggere in questa chiave con .NET. Non sono stato in grado di trovare qualsiasi documento per il formato del .snk, quindi mi chiedo se c'è un modo in C # per leggere in un file snk?
Il motivo originale per porre la domanda è stato quello di utilizzare il file snk per scopi diversi dalla firma di un assieme. Come una delle risposte stati sotto, lo scopo del file .snk è in realtà solo per la firma assemblee.
Soluzione
chiavi di denominazione forti sono utilizzati al momento della compilazione di firmare le assemblee prodotte dal compilatore -. Così la loro lettura in fase di runtime, probabilmente non è quello che vuoi
Per ottenere look per la scheda "Firma" nella finestra delle proprietà di C # progetto è partito -. Ci si può scegliere cosa .snk per firmare l'assembly con
http://msdn.microsoft.com/ it-it / library / xc31ft41 (VS.100) aspx
Altri suggerimenti
Trovato una menzione in MSDN qui . Ecco il codice:
public static void Main()
{
// Open a file that contains a public key value. The line below
// assumes that the Strong Name tool (SN.exe) was executed from
// a command prompt as follows:
// SN.exe -k C:\Company.keys
using (FileStream fs = File.Open("C:\\Company.keys", FileMode.Open))
{
// Construct a StrongNameKeyPair object. This object should obtain
// the public key from the Company.keys file.
StrongNameKeyPair k = new StrongNameKeyPair(fs);
// Display the bytes that make up the public key.
Console.WriteLine(BitConverter.ToString(k.PublicKey));
// Close the file.
fs.Close();
}
}