MmProbeAndLockSelectedPages ルーチンは、選択した仮想メモリ ページをプローブし、それらを常駐させ、メモリ内でロックします。
構文
VOID MmProbeAndLockSelectedPages(
[in, out] PMDL MemoryDescriptorList,
[in] PFILE_SEGMENT_ELEMENT SegmentArray,
[in] KPROCESSOR_MODE AccessMode,
[in] LOCK_OPERATION Operation
);
パラメーター
[in, out] MemoryDescriptorList
仮想メモリ バッファーを指定するメモリ記述子リスト (MDL) へのポインター。 ルーチンがメモリ内のページを正常にロックすると、基になる物理ページを記述するように MDL が更新されます。
[in] SegmentArray
仮想メモリ ページを含むバッファー セグメントの配列へのポインター。
[in] AccessMode
KernelMode または UserMode のいずれかの引数をプローブするアクセス モードを指定します。
[in] Operation
呼び出し元がアクセス権をプローブし、ページをロックする操作の種類を指定します。 このパラメーターを IoReadAccess、IoWriteAccess、または IoModifyAccess に設定します。 IoReadAccess は、ドライバーがバッファーの内容を調べることができるが、内容を変更できないことを示します。 IoWriteAccess と IoModifyAccess は同等であり、ドライバーがバッファーへの読み取りと書き込みの両方のアクセス権を持っていることを示します。
戻り値
何一つ
備考
mmProbeAndLockSelectedPages 呼び出しは、try/except ブロックで囲む必要があります。 ページが指定された操作をサポートしていない場合、ルーチンはSTATUS_ACCESS_VIOLATIONまたはその他の例外を発生させます。 詳細については、「例外の処理」を参照してください。
必要条件
| 要件 | 価値 |
|---|---|
| サポートされる最小クライアント | Windows 2000 以降で使用できます。 |
| ターゲット プラットフォーム の | 万国 |
| ヘッダー | wdm.h |
| IRQL | <= APC_LEVEL |