Condividi tramite


Il file '<file>' non è stato firmato

Aggiornamento: novembre 2007

Messaggio di errore

Il file '<file>' non è stato firmato. Il progetto di distribuzione contiene proprietà di firma non più in uso. Per ulteriori informazioni, vedere la Guida in linea.
The file '<file>' was not signed. The deployment project contains signing properties that are deprecated. See Help for more information.

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 generazione con Signtool.exe, lo strumento per la firma degli assembly disponibile in Windows Platform SDK, in una fase successiva alla generazione. Per ulteriori informazioni, vedere Strumento per la firma (SignTool.exe).

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 generazione (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 generazione.

In uno scenario avanzato, i file che costituiscono la distribuzione possono essere separati, pertanto nell'output di generazione 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 generazione eseguendo uno script che esegue:

  1. Scorrimento dell'insieme di file separati e file CAB nel percorso dell'output di generazione 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 generazione.

    <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

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

Strumento per la firma (SignTool.exe)