ICLRStrongName::StrongNameTokenFromPublicKey Method

Gets a token that represents a public key. A strong name token is the shortened form of a public key.


HRESULT StrongNameTokenFromPublicKey (   
    [in]  BYTE    *pbPublicKeyBlob,  
    [in]  ULONG   cbPublicKeyBlob,  
    [out] BYTE    **ppbStrongNameToken,  
    [out] ULONG   *pcbStrongNameToken  


[in] A structure of type PublicKeyBlob that contains the public portion of the key pair used to generate the strong name signature.

[in] The size, in bytes, of pbPublicKeyBlob.

[out] The strong name token corresponding to the key passed in pbPublicKeyBlob. The common language runtime allocates the memory in which to return the token. The caller must free this memory by using the ICLRStrongName::StrongNameFreeBuffer method.

[out] The size, in bytes, of the returned strong name token.

Return Value

S_OK if the method completed successfully; otherwise, an HRESULT value that indicates failure (see Common HRESULT Values for a list).


A strong name token is the shortened form of a public key that is used to save space when storing key information in metadata. Specifically, strong name tokens are used in assembly references to refer to the dependent assembly.


Platforms: See System Requirements.

Header: MetaHost.h

Library: Included as a resource in mscoree.dll

.NET Framework Versions: Available since 4

See Also

StrongNameGetPublicKey Method
PublicKeyBlob Structure
ICLRStrongName Interface