다음을 통해 공유


IModelObject::EnumerateRawValues 메서드(dbgmodel.h)

EnumerateRawValues 메서드는 지정된 개체의 모든 네이티브 자식(예: 필드, 기본 클래스 등)을 열거합니다.

구문

HRESULT EnumerateRawValues(
  SymbolKind     kind,
  ULONG          searchFlags,
  IRawEnumerator **enumerator
);

매개 변수

kind

가져올 네이티브 기호의 종류(예: 기본 클래스 또는 데이터 멤버)를 나타냅니다.

searchFlags

네이티브 구문에 대한 검색 동작을 지정하는 선택적 플래그 집합입니다.

enumerator

kind 인수에 지정된 종류의 모든 네이티브 자식 을 IRawEnumerator 인터페이스로 열거하는 열거자 입니다.

반환 값

이 메서드는 성공 또는 실패를 나타내는 HRESULT를 반환합니다.

설명

코드 예제

ComPtr<IModelObject> spMessage; /* get a tagMSG */

ComPtr<IRawEnumerator> spEnum;
if (SUCCEEDED(spMessage->EnumerateRawValues(SymbolField, RawSearchNone, &spEnum)))
{
    HRESULT hr = S_OK;
    while (SUCCEEDED(hr))
    {
        BSTR fieldName;
        SymbolKind symKind;
        ComPtr<IModelObject> spFieldValue;
        hr = spEnum->GetNext(&fieldName, &symbolKind, &spFieldValue);
        if (SUCCEEDED(hr))
        {
            // fieldName contains the name of the field, symKind contains the kind of 
            // symbol matched (SymbolField in this case), spFieldValue contains the value
            // For tagMSG (with symbols), the enumerator should produce field names and 
            // values for 'hwnd', 'message', 'wParam', 'lParam', 'time', and 'pt'
            SysFreeString(fieldName);
        }
    }

    // hr == E_BOUNDS : We hit the end of the enumerator
    // hr == E_ABORT  : There was a user request for an interrupt / propagate that upward immediately
}

요구 사항

요구 사항
헤더 dbgmodel.h

추가 정보

IModelObject 인터페이스