Compartilhar via


IDebugComPlusSymbolProvider::GetAssemblyName

Recupera o nome do assembly dado seu módulo e domínio de aplicativo.

Sintaxe

int GetAssemblyName(
    uint   ulAppDomainID,
    Guid   guidModule,
    string pbstrName
);

Parâmetros

ulAppDomainID
[em] Identificador do domínio do aplicativo.

guidModule
[em] Identificador exclusivo para o módulo.

pbstrName
[saiu] Retorna o nome do assembly.

Valor de retorno

Se tiver êxito, retornará S_OK. Caso contrário, retornará um código de erro.

Exemplo

O exemplo a seguir mostra como implementar esse método para um objeto CDebugSymbolProvider que expõe a interface IDebugComPlusSymbolProvider.

HRESULT CDebugSymbolProvider::GetAssemblyName(
    ULONG32 ulAppDomainID,
    GUID guidModule,
    BSTR* pbstrName
)
{
    HRESULT hr = S_OK;
    Module_ID idModule(ulAppDomainID, guidModule);
    CComPtr<IMetaDataImport> pMetadata;

    METHOD_ENTRY( CDebugSymbolProvider::GetMetadataForModule );

    IfFalseGo( pbstrName, E_INVALIDARG );
    *pbstrName = NULL;

    IfFailGo( GetMetadata( idModule, &pMetadata ) );
    IfFailGo( GetAssemblyName( pMetadata, 0, pbstrName ) );

Error:

    METHOD_EXIT( CDebugSymbolProvider::GetMetadataForModule, hr );
    return hr;
}

Confira também