IDebugComPlusSymbolProvider::GetAssemblyName

Извлекает имя сборки, заданной его модулем и доменом приложения.

Синтаксис

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

Параметры

ulAppDomainID
[in] Идентификатор домена приложения.

guidModule
[in] Уникальный идентификатор модуля.

pbstrName
[out] Возвращает имя сборки.

Возвращаемое значение

В случае успешного выполнения возвращается S_OK; в противном случае возвращается код ошибки.

Пример

В следующем примере показано, как реализовать этот метод для объекта CDebugSymbolProvider , который предоставляет интерфейс 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;
}

См. также