Partager via


Méthode ICLRStrongName::StrongNameSignatureGenerationEx

Génère une signature de nom fort pour l’assembly spécifié, en fonction des indicateurs spécifiés.

Syntaxe

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

Paramètres

wszFilePath
[in] Chemin du fichier qui contient le manifeste de l’assembly pour lequel la signature de nom fort sera générée.

wszKeyContainer
[in] Nom du conteneur de clés qui contient la paire de clés publique/privée.

Si pbKeyBlob a la valeur null, wszKeyContainer doit spécifier un conteneur valide au sein du fournisseur de services de chiffrement (CSP). Dans ce cas, la paire de clés stockée dans le conteneur est utilisée pour signer le fichier.

Si pbKeyBlob n’est pas null, la paire de clés est supposée être contenue dans l’objet blob (Binary Large Object) de la clé.

pbKeyBlob
[in] Pointeur vers la paire de clés publique/privée. Cette paire est au format créé par la fonction Win32 CryptExportKey. Si pbKeyBlob a la valeur Null, le conteneur de clés spécifié par wszKeyContainer est supposé contenir la paire de clés.

cbKeyBlob
[in] Taille, en octets, de pbKeyBlob.

ppbSignatureBlob
[out] Pointeur vers l’emplacement où le Common Language Runtime retourne la signature. Si ppbSignatureBlob a la valeur null, le runtime stocke la signature dans le fichier spécifié par wszFilePath.

Si ppbSignatureBlob n’est pas null, le Common Language Runtime alloue de l’espace dans lequel retourner la signature. L’appelant doit libérer cet espace en utilisant la méthode ICLRStrongName::StrongNameFreeBuffer.

pcbSignatureBlob
[out] Taille, en octets, de la signature retournée.

dwFlags
[in] Une ou plusieurs des valeurs suivantes :

  • SN_SIGN_ALL_FILES (0x00000001) - Recalcule tous les hachages pour les modules liés.

  • SN_TEST_SIGN (0x00000002) - Certifie par une signature test l’assembly.

Valeur de retour

S_OK si la méthode a abouti ; sinon, valeur HRESULT qui indique l’échec (consultez Valeurs HRESULT courantes pour obtenir une liste).

Notes

Spécifiez null pour wszFilePath afin de calculer la taille de la signature sans créer la signature.

La signature peut être stockée directement dans le fichier ou retournée à l’appelant.

Si SN_SIGN_ALL_FILES est spécifié, mais qu’une clé publique n’est pas incluse (pbKeyBlob et wszFilePath sont tous deux null), les hachages pour les modules liés sont recalculés, mais l’assembly n’est pas signé à nouveau.

Si SN_TEST_SIGN est spécifié, l’en-tête du Common Language Runtime n’est pas modifié pour indiquer que l’assembly est signé avec un nom fort.

Spécifications

Plateformes : Consultez Configuration requise.

En-tête : MetaHost.h

Bibliothèque : incluse en tant que ressource dans MsCorEE.dll

Versions de .NET Framework : Disponibles depuis 4

Voir aussi