Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Ruft die Daten ab, die über den beitrag Abschnitts beschrieben. h. einen zusammenhängenden Speicherblock, der dem Bild von einer Kompiliereinheit bereitgestellt wird.
IDiaSectionContrib : IUnknown
Methoden in die Vtable-Reihenfolge
In der folgenden Tabelle werden die Methoden von IDiaSectionContriban.
Methode |
Beschreibung |
|---|---|
Ruft einen Verweis auf das Symbol Kompiliereinheits ab, das diesen Abschnitt beitrug. |
|
Ruft den Teil der Adresse des Abschnitts Nachbedingung ab. |
|
Ruft den Offset Teil der Adresse des Nachbedingung ab. |
|
Ruft die relative virtuelle Adresse (RVA) des Bilds in der Nachbedingung ab. |
|
Ruft die virtuelle Adresse (VA) des Nachbedingung ab. |
|
Ruft die Anzahl der Bytes in einem Abschnitt ab. |
|
Ruft ein Flag ab, das angibt, ob der Abschnitt nicht geblättertes aufgrund von ungenügendem Arbeitsspeicher erfolgen kann. |
|
Ruft ein Flag ab, das angibt, ob der Grenze Speicherplatz zur nächsten Abschnitt nicht aufgefüllt werden soll. |
|
Ruft ein Flag ab, das angibt, ob der Abschnitt ausführbaren Code enthält. |
|
Ruft ein Flag ab, das angibt, ob der Abschnitt 16-Bit-Code enthält. |
|
Ruft ein Flag ab, das angibt, ob der Abschnitt enthält initialisierte Daten. |
|
Ruft ein Flag ab, das angibt, ob der Abschnitt nicht initialisierte Daten enthält. |
|
Ruft ein Flag ab, das angibt, ob ein Abschnitt Kommentare oder ähnliche Informationen enthält. |
|
Ruft ein Flag ab, das angibt, ob der Bereich entfernt wird, bevor er Teil des Bildes im Arbeitsspeicher ausgeführt wird. |
|
Ruft ein Flag ab, das angibt, ob es sich bei dem Abschnitt ein COMDAT-Datensatz ist. |
|
Ruft ein Flag ab, das angibt, ob der Abschnitt verworfen werden kann. |
|
Ruft ein Flag ab, das angibt, ob der Abschnitt nicht zwischengespeichert werden kann. |
|
Ruft ein Flag ab, das angibt, ob der Bereich im Arbeitsspeicher freigegeben werden kann. |
|
Ruft ein Flag ab, das angibt, ob der Bereich als Code ausgeführt werden kann. |
|
Ruft ein Flag ab, das angibt, ob der Abschnitt gelesen werden kann. |
|
Ruft ein Flag ab, das angibt, ob der Bereich geschrieben werden kann. |
|
Ruft die zyklische Blockprüfung (CRC) der Daten im Abschnitt ab. |
|
Ruft das Verschieben der CRC für den Abschnitt ab. |
|
Ruft den Bezeichner für den Kompiliereinheits Abschnitt ab. |
Hinweise
Hinweise für Aufrufer
Diese Schnittstelle wird abgerufen, indem die IDiaEnumSectionContribs::Item und IDiaEnumSectionContribs::Next-Methoden aufgerufen werden.Zeigen Sie die IDiaEnumSectionContribs-Schnittstelle als Beispiel für die IDiaSectionContrib-Schnittstelle abzurufen.
Beispiel
Diese Funktion wird die Adresse eines Abschnitts zusammen mit allen zugeordneten Symbolen angezeigt.Zeigen Sie die IDiaEnumSectionContribs-Schnittstelle, um zu sehen, wie die IDiaSectionContrib-Schnittstelle ermittelt wird.
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" );
}
}
}
}
Anforderungen
Header: Dia2.h
Bibliothek: diaguids.lib
DLLs: msdia80.dll