Condividi tramite


Funzione StrongNameSignatureGenerationEx

Genera una firma con nome sicuro per l'assembly definito, secondo i flag specificati.

Questa funzione è deprecata in .NET Framework versione 4. Utilizzare il metodo ICLRStrongName::StrongNameSignatureGenerationEx.

BOOLEAN StrongNameSignatureGenerationEx (
    [in]  LPCWSTR   wszFilePath,
    [in]  LPCWSTR   wszKeyContainer,
    [in]  BYTE      *pbKeyBlob,
    [in]  ULONG     cbKeyBlob,
    [out] BYTE      **ppbSignatureBlob,
    [out] ULONG     *pcbSignatureBlob,
    [in]  DWORD     dwFlags
);

Parametri

  • wszFilePath
    [in] Percorso del file contenente il manifesto dell'assembly per il quale sarà generata la firma con nome sicuro.

  • wszKeyContainer
    [in] Nome del contenitore di chiavi contenente la coppia di chiavi pubblica/privata.

    Se il parametro pbKeyBlob è null, wszKeyContainer deve specificare un contenitore valido all'interno del provider del servizio di crittografia (CSP, Cryptographic Service Provider). In questo caso, la coppia di chiavi archiviata nel contenitore verrà utilizzata per firmare il file.

    Se il parametro pbKeyBlob non è null, si presuppone che la coppia di chiavi sia contenuta nell'oggetto BLOB (Binary Large Object) della chiave.

  • pbKeyBlob
    [in] Puntatore alla coppia di chiavi pubblica/privata. Il formato di questa coppia corrisponde a quello creato dalla funzione Win32 CryptExportKey. Se il parametro pbKeyBlob è null, si presuppone che la coppia di chiavi sia archiviata nel contenitore di chiavi specificato dal parametro wszKeyContainer.

  • cbKeyBlob
    [in] Dimensione, in byte, di pbKeyBlob.

  • ppbSignatureBlob
    [out] Puntatore alla posizione in cui Common Language Runtime restituisce la firma. Se il parametro ppbSignatureBlob è null, la firma verrà archiviata nel file specificato da wszFilePath.

    Se ppbSignatureBlob è diverso da null, Common Language Runtime allocherà lo spazio in cui la firma deve essere restituita. Lo spazio deve essere liberato dal chiamante mediante la funzione StrongNameFreeBuffer.

  • pcbSignatureBlob
    [out] Dimensione della firma restituita in byte.

  • dwFlags
    [In] Uno o più dei seguenti valori:

    • SN_SIGN_ALL_FILES (0x00000001) - Ricalcola tutti gli hash per i moduli collegati.

    • SN_TEST_SIGN (0x00000002) - Applica una firma di test all'assembly.

Valore restituito

true in caso di esito positivo; in caso contrario, false.

Note

Specificare null per il parametro wszFilePath per calcolare la dimensione della firma senza creare la firma.

La firma può essere archiviata direttamente nel file o restituita al chiamante.

Se si specifica SN_SIGN_ALL_FILES ma non è inclusa una chiave pubblica (i parametri pbKeyBlob e wszFilePath sono entrambi null), gli hash per i moduli collegati vengono ricalcolati ma l'assembly non viene firmato nuovamente.

Se si specifica SN_TEST_SIGN, l'intestazione di Common Language Runtime non viene modificata per indicare che l'assembly ha una firma con nome sicuro.

Se la funzione StrongNameSignatureGenerationEx non viene completata correttamente, chiamare la funzione StrongNameErrorInfo per recuperare l'ultimo errore generato.

Requisiti

Piattaforme: vedere Requisiti di sistema di .NET Framework.

Intestazione: StrongName.h

Libreria: inclusa come risorsa in MsCorEE.dll

Versioni di .NET Framework: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0

Vedere anche

Riferimenti

Interfaccia ICLRStrongName

Altre risorse

Metodo ICLRStrongName::StrongNameSignatureGenerationEx

Metodo ICLRStrongName::StrongNameSignatureGeneration

Cronologia delle modifiche

Data

Cronologia

Motivo

Luglio 2010

È stato aggiunto un collegamento all'alternativa consigliata.

Miglioramento delle informazioni.