Método ICLRStrongName::StrongNameSignatureGenerationEx
Gera uma assinatura de nome forte para a assemblagem especificada, de acordo com os sinalizadores especificados.
Sintaxe
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] O caminho para o ficheiro que contém o manifesto da assemblagem para a qual será gerada a assinatura de nome forte.
wszKeyContainer
[in] O nome do contentor de chaves que contém o par de chaves públicas/privadas.
Se pbKeyBlob
for nulo, wszKeyContainer
tem de especificar um contentor válido no fornecedor de serviços criptográficos (CSP). Neste caso, o par de chaves armazenado no contentor é utilizado para assinar o ficheiro.
Se pbKeyBlob
não for nulo, presume-se que o par de chaves está contido no objeto binário grande da chave (BLOB).
pbKeyBlob
[in] Um ponteiro para o par de chaves públicas/privadas. Este par está no formato criado pela função Win32 CryptExportKey
. Se pbKeyBlob
for nulo, assume-se que o contentor de chaves especificado por wszKeyContainer
contém o par de chaves.
cbKeyBlob
[in] O tamanho, em bytes, de pbKeyBlob
.
ppbSignatureBlob
[fora] Um ponteiro para a localização para a qual o runtime de linguagem comum devolve a assinatura. Se ppbSignatureBlob
for nulo, o runtime armazena a assinatura no ficheiro especificado por wszFilePath
.
Se ppbSignatureBlob
não for nulo, o runtime de linguagem comum aloca espaço para devolver a assinatura. O autor da chamada tem de libertar este espaço com o método ICLRStrongName::StrongNameFreeBuffer .
pcbSignatureBlob
[fora] O tamanho, em bytes, da assinatura devolvida.
dwFlags
[in] Um ou mais dos seguintes valores:
SN_SIGN_ALL_FILES
(0x00000001) - Recompute todos os hashes para módulos ligados.SN_TEST_SIGN
(0x00000002) - Teste o início de sessão da assemblagem.
Devolver Valor
S_OK
se o método tiver sido concluído com êxito; caso contrário, um valor HRESULT que indica uma falha (veja Valores HRESULT Comuns para uma lista).
Observações
Especifique nulo para wszFilePath
para calcular o tamanho da assinatura sem criar a assinatura.
A assinatura pode ser armazenada diretamente no ficheiro ou devolvida ao autor da chamada.
Se SN_SIGN_ALL_FILES
for especificado, mas uma chave pública não estiver incluída (ambas pbKeyBlob
e wszFilePath
forem nulas), os hashes para módulos ligados são recompilados, mas a assemblagem não é reassinada.
Se SN_TEST_SIGN
for especificado, o cabeçalho de runtime de linguagem comum não é modificado para indicar que a assemblagem está assinada com um nome forte.
Requisitos
Plataformas: Veja Requisitos de Sistema.
Cabeçalho: MetaHost.h
Biblioteca: Incluído como um recurso no MSCorEE.dll
.NET Framework Versões: Disponível desde 4