Compartir a través de


ICLRStrongName::StrongNameSignatureGenerationEx (Método)

Genera una firma de nombre seguro para el ensamblado especificado, de acuerdo con los marcadores especificados.

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 va a generar la firma de nombre seguro.

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

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

    Si pbKeyBlob no es NULL, se da por supuesto que el par de claves se encuentra en el objeto binario grande (BLOB) clave.

  • pbKeyBlob
    [in] Puntero al par de claves pública y privada. Este par tiene el formato creado por 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 que señala la ubicación en la que Common Language Runtime devuelve la firma. Si ppbSignatureBlob es null, el motor en tiempo de ejecución almacena la firma en el archivo especificado por wszFilePath.

    Si ppbSignatureBlob no es null, Common Language Runtime asigna espacio en el que devolver la firma. El llamador debe liberar este espacio mediante el método ICLRStrongName::StrongNameFreeBuffer.

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

  • dwFlags
    [In] Uno o varios de los siguientes valores:

    • SN_SIGN_ALL_FILES (0x00000001): se vuelven a calcular todos los valores hash para los módulos vinculados.

    • SN_TEST_SIGN (0x00000002): se firma el ensamblado con una firma de prueba.

Valor devuelto

S_OK si el método se completó correctamente; de lo contrario, devuelve un valor HRESULT que indica el error (vea Common HRESULT Values para obtener una lista).

Comentarios

Especifique null en wszFilePath para calcular el tamaño de la firma sin crearla.

La firma se puede almacenar directamente en el archivo o se puede devolver al llamador.

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

Si se especifica SN_TEST_SIGN, 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 de .NET Framework.

Encabezado: MetaHost.h

Biblioteca: Se incluye como recurso en MsCorEE.dll

Versiones de .NET Framework: 4

Vea también

Referencia

ICLRStrongName (Interfaz)

Otros recursos

ICLRStrongName::StrongNameSignatureGeneration (Método)

Historial de cambios

Fecha

Historial

Motivo

1 de abril de 2011

Se corrigió el valor devuelto.

Corrección de errores de contenido.

Julio de 2010

Se ha agregado un tema.

Mejora de la información.