2010-02-12 14 views
11

Uso Visual Studio 2008 e ho una soluzione che contiene più progetti. Ho 1 snk per firmare i miei assembly e questo vive in una cartella della soluzione.Più progetti devono utilizzare 1 file SNK

Ho collegato lo snk a ciascuno dei miei progetti ma ora quando tento di firmare il mio progetto con quello snk collegato non riesco a trovare il file snk con la finestra di dialogo del file.

Ho perso un passaggio qui?

Solution 
    > Solution Folder 
     MyKey.snk 
    > Project X 
     > _LinkedFiles 
      MyKey.snk (physical file doesn't appear here but shows in VS) 
     > ... 

risposta

2

Beh, non c'è molta risposta qui ma ho trovato una soluzione con cui mi trovavo a mio agio. Ho un ProductAssemblyInfo che vive in una cartella della soluzione ma è collegato a ciascun progetto come di seguito.

Solution 
    > Build (Solution Folder) 
     MyKey.snk 
     ProductAssemblyInfo.cs 
    > Project X 
     > _LinkedFiles 
      ProductAssemblyInfo.cs 
     > ... 

Il ProductLevelAssembly contiene la seguente riga:

[assembly: AssemblyKeyFile("../../Build/MyKey.snk")] 

In questo modo il file di chiave non viene mai copiato in ogni progetto, ma ogni gruppo è ancora firmato dalla chiave.

+1

AssemblyKeyFile è obsoleto – Nick

0

non collegare, basta fare copie di esso. Se si ricostruisce l'SNK, sarà necessario copiarlo nuovamente su tutti i progetti, ma la probabilità di doverlo fare è MOLTO bassa. In realtà, cambiamo solo gli SNK quando modifichiamo i numeri di versione principali.

Inoltre, quando si collega un file, lo si collega nel file della soluzione, non effettuando una copia che modifica entrambi i punti contemporaneamente. La finestra di dialogo Sfoglia mostrerà solo i file che esistono sul disco.

+0

Questa risposta sarà tecnicamente funzionerà. Ma ricorda, il tuo file chiave PRIVATO (.snk) è come la cosa che dice "Siamo chi diciamo di essere" ... quindi avere copie di esso potrebbe essere un rischio per la sicurezza. Quindi sono d'accordo con la risposta, ma viene fornito con un disclaimer (IMHO). – granadaCoder

Problemi correlati