IDebugComPlusSymbolProvider::GetSymAttribute
Recupera os símbolos de depuração com o atributo de determinado pai para o módulo especificado.
HRESULT GetSymAttribute (
ULONG32 ulAppDomainID,
GUID guidModule,
_mdToken tokParent,
LPOLESTR pstrName,
ULONG32 cBuffer,
ULONG32* pcBuffer,
BYTE* buffer
);
int GetSymAttribute (
uint ulAppDomainID,
Guid guidModule,
int tokParent,
string pstrName,
uint cBuffer,
out uint pcBuffer,
out int[] buffer
);
Parâmetros
ulAppDomainID
[in] Identificador do domínio do aplicativo.guidModule
[in] Identificador exclusivo do módulo.tokParent
[in] Token para o atributo pai.pstrName
[in] Nome do módulo.cBuffer
[in] Número de bytes necessários para a saída de buffer.pcBuffer
[out] Comprimento da saída buffer.buffer
[out] Matriz que contém os símbolos.
Valor de retorno
Se bem-sucedida, retorna S_OK; Caso contrário, retorna um código de erro.
Exemplo
O exemplo a seguir mostra como implementar este método para um CDebugSymbolProvider objeto que expõe a IDebugComPlusSymbolProvider interface.
HRESULT CDebugSymbolProvider::GetSymAttribute(
ULONG32 ulAppDomainID,
GUID guidModule,
_mdToken tokParent,
__in_z LPOLESTR pstrName,
ULONG32 cBuffer,
ULONG32 *pcBuffer,
BYTE buffer[])
{
HRESULT hr = S_OK;
CComPtr<CModule> pModule;
Module_ID idModule(ulAppDomainID, guidModule);
METHOD_ENTRY( CDebugSymbolProvider::GetSymAttribute );
IfFailGo( GetModule( idModule, &pModule) );
IfFailGo( pModule->GetSymAttribute( tokParent, pstrName, cBuffer, pcBuffer, buffer ) );
Error:
METHOD_EXIT(CDebugSymbolProvider::GetSymAttribute, hr);
return hr;
}