Partilhar via


IDebugComPlusSymbolProvider2::GetTypeFromToken

Recupera um tipo dado seu token.

Sintaxe

int GetTypeFromToken(
    uint            appDomain,
    Guid            guidModule,
    uint            tdToken,
    out IDebugField ppField
);

Parâmetros

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

guidModule
[em] Identificador exclusivo do módulo.

tdToken
[em] Token do tipo a ser recuperado.

ppField
[saiu] Retorna o tipo que é representado pelo IDebugField.

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 IDebugComPlusSymbolProvider2 .

HRESULT CDebugSymbolProvider::GetTypeFromToken(
    ULONG32 ulAppDomainID,
    GUID guidModule,
    DWORD tdToken,
    IDebugField **ppField)
{
    HRESULT hr = E_FAIL;

    METHOD_ENTRY( CDebugDynamicFieldSymbol::GetTypeFromToken );

    ASSERT(IsValidObjectPtr(this, CDebugSymbolProvider));
    ASSERT(IsValidWritePtr(ppField, IDebugField*));

    Module_ID idModule(ulAppDomainID, guidModule);

    IfFailGo( this->CreateClassType(idModule, tdToken, ppField) );

Error:

    METHOD_EXIT( CDebugDynamicFieldSymbol::GetTypeFromToken, hr );

    return hr;
}

Confira também