RtlFreeHeap-Funktion (ntifs.h)

Die RtlFreeHeap-Routine gibt einen Speicherblock frei, der von RtlAllocateHeap aus einem Heap zugeordnet wurde.

Syntax

NTSYSAPI LOGICAL RtlFreeHeap(
  [in]           PVOID                 HeapHandle,
  [in, optional] ULONG                 Flags,
                 _Frees_ptr_opt_ PVOID BaseAddress
);

Parameter

[in] HeapHandle

Ein Handle für den Heap, dessen Speicherblock freigegeben werden soll. Dieser Parameter ist ein von RtlCreateHeap zurückgegebenes Handle.

[in, optional] Flags

Eine Reihe von Flags, die Aspekte des Freigebens eines Speicherblocks steuern. Wenn Sie den folgenden Wert angeben, wird der entsprechende Wert überschrieben, der im Flags-Parameter angegeben wurde, als der Heap von RtlCreateHeap erstellt wurde.

Flag Bedeutung
HEAP_NO_SERIALIZE Der gegenseitige Ausschluss wird nicht verwendet, wenn RtlFreeHeap auf den Heap zugreift.

BaseAddress

Ein Zeiger auf den Speicherblock, der freizugeben ist. Dieser Zeiger wird von RtlAllocateHeap zurückgegeben.

Rückgabewert

RtlFreeHeap gibt TRUE zurück, wenn der Block erfolgreich freigegeben wurde. False andernfalls.

Hinweis Ab Windows 8 wird der Rückgabewert als LOGICAL eingegeben, was eine andere Größe als BOOLEAN aufweist.
 

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar ab Windows XP.
Zielplattform Universell
Header ntifs.h (include Ntifs.h)
Bibliothek NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

Weitere Informationen

RtlAllocateHeap

RtlCreateHeap

RtlDestroyHeap