Поделиться через


IDebugComPlusSymbolProvider2::GetTypeFromToken

Возвращает тип заданного свой маркер.

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

Параметры

  • appDomain
    [in] идентификатор домена приложения.

  • guidModule
    [in] уникальный идентификатор модуля.

  • tdToken
    [in] маркер типа, который необходимо извлечь.

  • ppField
    [out] возвращает тип, представленный IDebugField.

Возвращаемое значение

В случае успеха возвращает S_OK; в противном случае возвращает код ошибки.

Пример

В следующем примере показано, как реализовать этот метод, a CDebugSymbolProvider объект, предоставляющий 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;
}

См. также

Ссылки

IDebugComPlusSymbolProvider2