Condividi tramite


Il file '<file>' non è stato firmato

Il file '<file>' non è stato firmato.Il progetto di distribuzione contiene proprietà di firma non più in uso.Per ulteriori informazioni, vedere la Guida.

La funzionalità di firma, disponibile in Visual Studio 2003 e nelle versioni precedenti, è stata rimossa dai progetti di installazione e distribuzione (Progetto di installazione, Progetto di installazione Web, Progetto CAB e Progetto Modulo unione). Se si importa un progetto di Visual Studio 2003 con la firma attivata in Visual Studio 2005 o se si desidera attivare la firma per il progetto di distribuzione, sarà necessario firmare i file nell'output di compilazione con Signtool.exe, lo strumento per la firma degli assembly disponibile in Windows Platform SDK, in una fase successiva alla compilazione. Per ulteriori informazioni, vedere SignTool.exe (strumento per la firma).

Nel caso più semplice, non sono presenti file separati, solo l'applicazione di avvio automatico (setup.exe) e/o il file di package risultante dalla compilazione (package di Windows Installer, file con estensione cab o modulo unione). In questo caso, è possibile chiamare Signtool.exe nella finestra di dialogo di evento successiva alla compilazione.

In uno scenario avanzato, i file che costituiscono la distribuzione possono essere separati, pertanto nell'output di compilazione saranno presenti più file rispetto alla sola applicazione di avvio automatico e al package di Windows Installer. È spesso consigliabile firmare questi file separati e aggiornare il package di Windows Installer con il codice hash di ogni componente firmato. Questa operazione deve essere effettuata in una fase successiva alla compilazione eseguendo uno script che esegue:

  1. Scorrimento dell'insieme di file separati e file CAB nel percorso dell'output di compilazione e firma degli stessi con Signtool.exe.

  2. Nel package di Windows Installer, aggiornamento del codice hash per ogni file firmato.

  3. Firma dell'applicazione di avvio automatico e del package di Windows Installer con Signtool.exe.

Per correggere questo errore nel caso più semplice

  • Chiamare Signtool.exe nella finestra di evento successiva alla compilazione.

    <SDK Install dir>Signtool sign –f "filename.pfx" –p "password" $(BuiltOuputPath)\Setup2.msi

    <SDK Install dir>Signtool sign –f "filename.pfx" –p "password" $(BuiltOuputPath)\setup.exe

Se il proprio certificato è memorizzato in file con estensione pvk e spc, è possibile utilizzare lo strumento pvk2pfx.exe di Windows Platform SDK per convertire il formato di tali file in pfx.

Vedere anche

Riferimenti

Compila, Proprietà di configurazione, finestra di dialogo Proprietà del progetto di distribuzione

SignTool.exe (strumento per la firma)