Freigeben über


MmProbeAndLockSelectedPages-Funktion (wdm.h)

Die MmProbeAndLockSelectedPages Routine überprüft die ausgewählten virtuellen Speicherseiten, macht sie resident und sperrt sie im Speicher.

Syntax

void MmProbeAndLockSelectedPages(
  [in, out] PMDL                  MemoryDescriptorList,
  [in]      PFILE_SEGMENT_ELEMENT SegmentArray,
  [in]      KPROCESSOR_MODE       AccessMode,
  [in]      LOCK_OPERATION        Operation
);

Parameter

[in, out] MemoryDescriptorList

Ein Zeiger auf eine Speicherdeskriptorliste (MDL), die einen virtuellen Speicherpuffer angibt. Wenn die Routine die Seiten im Arbeitsspeicher erfolgreich sperrt, wird die MDL aktualisiert, um die zugrunde liegenden physischen Seiten zu beschreiben.

[in] SegmentArray

Ein Zeiger auf ein Array von Puffersegmenten, die die virtuellen Speicherseiten enthalten.

[in] AccessMode

Gibt den Zugriffsmodus an, in dem die Argumente entweder KernelMode oder UserMode untersucht werden sollen.

[in] Operation

Gibt den Typ des Vorgangs an, für den der Aufrufer die Zugriffsberechtigungen überprüfen und die Seiten gesperrt werden soll. Legen Sie diesen Parameter auf IoReadAccess, IoWriteAccess oder IoModifyAccess fest. IoReadAccess gibt an, dass der Treiber den Inhalt des Puffers untersuchen kann, den Inhalt aber nicht ändern kann. IoWriteAccess und IoModifyAccess, die gleichwertig sind, geben an, dass der Treiber sowohl Lese- als auch Schreibzugriff auf den Puffer hat.

Rückgabewert

Nichts

Bemerkungen

Aufrufe an MmProbeAndLockSelectedPages- müssen in einen try/except-Block eingeschlossen werden. Wenn die Seiten den angegebenen Vorgang nicht unterstützen, löst die Routine die STATUS_ACCESS_VIOLATION oder andere Ausnahmen aus. Weitere Informationen finden Sie unter Behandeln von Ausnahmen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Ab Windows 2000 verfügbar.
Zielplattform- Universal
Header- wdm.h
IRQL- <= APC_LEVEL

Siehe auch

MmProbeAndLockPages