다음을 통해 공유


IDiaSectionContrib

섹션에 대 한 기여를 설명 하는 데이터를 검색, 이미지를 메모리의 연속 블록은 컴파일 대상으로, 멤버입니다.

IDiaSectionContrib : IUnknown

메서드에서 Vtable 순서

다음 표에서 메서드를 IDiaSectionContrib.

메서드

설명

IDiaSectionContrib::get_compiland

이 섹션에서는 멤버 컴파일 심볼에 대 한 참조를 검색 합니다.

IDiaSectionContrib::get_addressSection

기여의 주소 구역 부분을 검색합니다.

IDiaSectionContrib::get_addressOffset

오프셋된 부분의 기여도 주소를 검색합니다.

IDiaSectionContrib::get_relativeVirtualAddress

이미지 상대 가상 주소 (RVA) 기여도 검색합니다.

IDiaSectionContrib::get_virtualAddress

기여도 가상 주소 (VA)을 검색합니다.

IDiaSectionContrib::get_length

섹션에 대 한 바이트 수를 검색합니다.

IDiaSectionContrib::get_notPaged

메모리 부족 섹션 페이징할 수 있는지 여부를 나타내는 플래그를 검색 합니다.

IDiaSectionContrib::get_nopad

섹션 다음 메모리 경계를 채울 수 있는지 여부를 나타내는 플래그를 검색 합니다.

IDiaSectionContrib::get_code

섹션에 실행 코드가 포함 되어 있는지 여부를 나타내는 플래그를 검색 합니다.

IDiaSectionContrib::get_code16bit

16 비트 코드 섹션이 있는지 여부를 나타내는 플래그를 검색 합니다.

IDiaSectionContrib::get_initializedData

섹션에 초기화 된 데이터가 포함 되어 있는지 여부를 나타내는 플래그를 검색 합니다.

IDiaSectionContrib::get_uninitializedData

섹션에 초기화 되지 않은 데이터가 포함 되어 있는지 여부를 나타내는 플래그를 검색 합니다.

IDiaSectionContrib::get_informational

섹션 설명 또는 유사한 정보가 포함 되어 있는지 여부를 나타내는 플래그를 검색 합니다.

IDiaSectionContrib::get_remove

섹션에 메모리에 이미지 부분 전에 제거할지 여부를 나타내는 플래그를 검색 합니다.

IDiaSectionContrib::get_comdat

섹션 COMDAT 레코드 인지 여부를 나타내는 플래그를 검색 합니다.

IDiaSectionContrib::get_discardable

섹션을 삭제할 수 있는지 여부를 나타내는 플래그를 검색 합니다.

IDiaSectionContrib::get_notCached

섹션을 캐시할 수 있는지 여부를 나타내는 플래그를 검색 합니다.

IDiaSectionContrib::get_share

메모리에 섹션 공유 될 수 있는지 여부를 나타내는 플래그를 검색 합니다.

IDiaSectionContrib::get_execute

섹션 코드와 실행 파일 인지 여부를 나타내는 플래그를 검색 합니다.

IDiaSectionContrib::get_read

섹션을 읽을 수 있는지 여부를 나타내는 플래그를 검색 합니다.

IDiaSectionContrib::get_write

섹션을 쓸 수 있는지 여부를 나타내는 플래그를 검색 합니다.

IDiaSectionContrib::get_dataCrc

순환 중복 검사 (CRC) 섹션에서 데이터를 검색합니다.

IDiaSectionContrib::get_relocationsCrc

CRC 재배치 섹션에 대 한 정보를 검색합니다.

IDiaLineNumber::get_compilandId

컴파일 대상 식별자 절을 검색합니다.

설명

호출자에 대 한 참고 사항

이 인터페이스를 호출 하 여 가져온는 IDiaEnumSectionContribs::ItemIDiaEnumSectionContribs::Next 방법입니다.참조는 IDiaEnumSectionContribs 인터페이스를 가져오는 예제를 IDiaSectionContrib 인터페이스.

예제

이 함수는 연결 된 기호가 함께 각 섹션의 주소를 보여 줍니다.참조는 IDiaEnumSectionContribs 인터페이스를 볼 수는 어떻게 IDiaSectionContrib 인터페이스에서 얻은.

void PrintSectionContrib(IDiaSectionContrib* pSecContrib, IDiaSession* pSession)
{
    if (pSecContrib != NULL && pSession != NULL)
    {
        DWORD rva;
        if ( pSecContrib->get_relativeVirtualAddress( &rva ) == S_OK )
        {
            printf( "\taddr: 0x%.8X", rva );
            pSecContrib = NULL;
            CComPtr<IDiaSymbol> pSym;
            if ( psession->findSymbolByRVA( rva, SymTagNull, &pSym ) == S_OK )
            {
                CDiaBSTR name;
                DWORD    tag;
                pSym->get_symTag( &tag );
                pSym->get_name( &name );
                printf( "     symbol: %ws (%ws)\n",
                        name != NULL ? name : L"",
                        szTags[ tag ] );
            }
            else
            {
                printf( "<no symbol found?>\n" );
            }
        }
        else
        {
            DWORD isect;
            DWORD offset;
            pSecContrib->get_addressSection( &isect );
            pSecContrib->get_addressOffset( &offset );
            printf( "\taddr: 0x%.4X:0x%.8X", isect, offset );
            pSecContrib = NULL;
            CComPtr<IDiaSymbol> pSym;
            if ( SUCCEEDED( psession->findSymbolByAddr(
                                              isect,
                                              offset,
                                              SymTagNull,
                                              &pSym )
                          )
               )
            {
                CDiaBSTR name;
                DWORD    tag;
                pSym->get_symTag( &tag );
                pSym->get_name( &name );
                printf( "     symbol: %ws (%ws)\n",
                    name != NULL ? name : L"",
                    szTags[ tag ] );
            }
            else
            {
                printf( "<no symbol found?>\n" );
            }
        }
    }
}

요구 사항

헤더: Dia2.h

라이브러리: diaguids.lib

DLL: msdia80.dll

참고 항목

참조

IDiaEnumSectionContribs

IDiaEnumSectionContribs::Item

IDiaEnumSectionContribs::Next

기타 리소스

인터페이스(디버그 인터페이스 액세스 SDK)