Condividi tramite


Funzione RtlGetUnloadEventTraceEx

Recupera le dimensioni e la posizione dell'elenco di moduli scaricato dinamicamente per il processo corrente.

Sintassi

VOID WINAPI RtlGetUnloadEventTraceEx(
  _Out_ PULONG *ElementSize,
  _Out_ PULONG *ElementCount,
  _Out_ PVOID  *EventTrace
);

Parametri

ElementSize [out]

Puntatore a una variabile che contiene le dimensioni di un elemento nell'elenco.

ElementCount [out]

Puntatore a una variabile che contiene il numero di elementi nell'elenco.

EventTrace [out]

Puntatore a una matrice di strutture RTL_UNLOAD_EVENT_TRACE . Per altre informazioni, vedere la sezione Osservazioni.

Valore restituito

Questa funzione non restituisce un valore.

Commenti

Il caricatore archivia le informazioni sugli eventi scaricate in posizioni che possono essere lette tra processi sfruttando il fatto che Ntdll.dll viene caricato nello stesso indirizzo di base in tutti i processi. Quando un debugger deve eseguire query sulle informazioni del modulo scaricate, chiama questa funzione per determinare l'indirizzo in cui si trovano le variabili, quindi esegue una query sulla memoria virtuale nel processo di destinazione in corrispondenza di tali indirizzi per leggere i valori effettivi.

Ogni elemento nell'elenco è definito come segue.

typedef struct _RTL_UNLOAD_EVENT_TRACE {
    PVOID BaseAddress;   // Base address of dll
    SIZE_T SizeOfImage;  // Size of image
    ULONG Sequence;      // Sequence number for this event
    ULONG TimeDateStamp; // Time and date of image
    ULONG CheckSum;      // Image checksum
    WCHAR ImageName[32]; // Image name
} RTL_UNLOAD_EVENT_TRACE, *PRTL_UNLOAD_EVENT_TRACE;

Questa funzione non ha alcun file di intestazione associato. La libreria di importazione associata, Ntdll.lib, è disponibile in Windows Driver Kit (WDK). È anche possibile chiamare questa funzione usando le funzioni LoadLibrary e GetProcAddress .

Requisiti

Requisito Valore
DLL
Ntdll.dll