IDebugComPlusSymbolProvider::GetAssemblyName
Retrieves the name of the assembly given its module and application domain.
[C++]
HRESULT GetAssemblyName(
ULONG32 ulAppDomainID,
GUID guidModule,
BSTR* pbstrName
);
[C#]
int GetAssemblyName(
uint ulAppDomainID,
Guid guidModule,
string pbstrName
);
Parameters
ulAppDomainID
[in] Identifier for the application domain.guidModule
[in] Unique identifier for the module.pbstrName
[out] Returns the name of the assembly.
Return Value
If successful, returns S_OK; otherwise, returns an error code.
Example
The following example shows how to implement this method for a CDebugSymbolProvider object that exposes the IDebugComPlusSymbolProvider interface.
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;
}