Compartilhar via


IDebugComPlusSymbolProvider::GetSymUnmanagedReader

Recupera o leitor de símbolos a ser usado por código não gerenciado.

Sintaxe

int GetSymUnmanagedReader(
    uint       ulAppDomainID,
    Guid       guidModule,
    out object ppSymUnmanagedReader
);

Parâmetros

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

guidModule
[em] Identificador exclusivo do módulo.

ppSymUnmanagedReader
[saiu] Retorna o objeto que representa o leitor de símbolos.

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::GetSymUnmanagedReader(
    ULONG32 ulAppDomainID,
    GUID guidModule,
    IUnknown ** ppSymUnmanagedReader
)
{
    HRESULT hr = S_OK;
    CComPtr<CModule> pModule;
    Module_ID idModule(ulAppDomainID, guidModule);

    METHOD_ENTRY( CDebugSymbolProvider::GetSymUnmanagedReader );

    IfFailGo( GetModule( idModule, &pModule ) );
    IfFailGo( pModule->GetSymReader((ISymUnmanagedReader**) ppSymUnmanagedReader) );

Error:

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

Confira também