Compartir a través de


ICLRStrongName::StrongNameSignatureGenerationEx (Método)

Genera una firma de nombre seguro para el ensamblado especificado, según las marcas indicadas.

Sintaxis

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

Parámetros

wszFilePath
[in] Ruta de acceso al archivo que contiene el manifiesto del ensamblado para el que se generará la firma de nombre seguro.

wszKeyContainer
[in] Nombre del contenedor de claves que contiene el nombre del par de claves pública y privada.

Si pbKeyBlob es null, wszKeyContainer debe especificar un contenedor válido dentro del proveedor de servicios criptográficos (CSP). En este caso, se usa el par de claves almacenado en el contenedor para firmar el archivo.

Si pbKeyBlob no es null, se supone que el par de claves está incluido en el objeto binario grande (BLOB) de clave.

pbKeyBlob
[in] Puntero al par de claves pública y privada. Este par tiene el formato que crea la función CryptExportKey de Win32. Si pbKeyBlob es null, se supone que el contenedor de claves especificado por wszKeyContainer contiene el par de claves.

cbKeyBlob
[in] Tamaño en bytes de pbKeyBlob.

ppbSignatureBlob
[out] Puntero a la ubicación en la que Common Language Runtime devuelve la firma. Si ppbSignatureBlob es null, el runtime almacena la firma en el archivo que especifica wszFilePath.

Si ppbSignatureBlob no es null, Common Language Runtime asigna espacio en el que se devolverá la firma. El autor de la llamada deberá liberar este espacio en memoria con el método ICLRStrongName::StrongNameFreeBuffer.

pcbSignatureBlob
[out] Tamaño en bytes de la firma devuelta.

dwFlags
[in] Uno o varios de los valores siguientes:

  • SN_SIGN_ALL_FILES (0x00000001): vuelva a calcular todos los hashes de los módulos vinculados.

  • SN_TEST_SIGN (0x00000002): firma de generación de prueba al ensamblado.

Valor devuelto

Se devolverá el valor S_OK si el método se completa correctamente; de lo contrario, se devolverá un valor HRESULT que se corresponderá con un error (vea Valores HRESULT comunes para obtener una lista).

Comentarios

Especifique null para que wszFilePath calcule el tamaño de la firma sin crearla.

La firma se puede almacenar directamente en el archivo o devolverla al autor de la llamada.

Si SN_SIGN_ALL_FILES se especifica pero no se incluye una clave pública (pbKeyBlob y wszFilePath son null), se vuelven a calcular los hash de los módulos vinculados, pero el ensamblado no se vuelve a firmar.

Si SN_TEST_SIGN se especifica, el encabezado de Common Language Runtime no se modifica para indicar que el ensamblado está firmado con un nombre seguro.

Requisitos

Plataformas: Vea Requisitos de sistema.

Encabezado: MetaHost.h

Biblioteca: incluida como recurso en MSCorEE.dll

Versiones de .NET Framework: disponible a partir de la versión 4

Consulte también