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.

È stato utile?

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();
    }
}

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top