Partilhar via


IDebugComPlusSymbolProvider2::GetTypeFromToken

Recupera um tipo de dado seu símbolo.

HRESULT GetTypeFromToken(
   ULONG32       appDomain,
   GUID          guidModule,
   DWORD         tdToken,
   IDebugField** ppField
);
int GetTypeFromToken(
   uint            appDomain,
   Guid            guidModule,
   uint            tdToken,
   out IDebugField ppField
);

Parâmetros

  • appDomain
    [in] Identificador do domínio do aplicativo.

  • guidModule
    [in] Identificador exclusivo do módulo.

  • tdToken
    [in] Token do tipo a ser recuperado.

  • ppField
    [out] Retorna o tipo que é representado pela IDebugField.

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

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;
}

Consulte também

Referência

IDebugComPlusSymbolProvider2