Fungsi RtlFindSetBitsAndClear (wdm.h)

Rutinitas RtlFindSetBitsAndClear mencari berbagai bit set dari ukuran yang diminta dalam bitmap dan menghapus semua bit dalam rentang ketika telah ditemukan.

Sintaks

NTSYSAPI ULONG RtlFindSetBitsAndClear(
  [in] PRTL_BITMAP BitMapHeader,
  [in] ULONG       NumberToFind,
  [in] ULONG       HintIndex
);

Parameter

[in] BitMapHeader

Penunjuk ke struktur RTL_BITMAP yang menjelaskan bitmap. Struktur ini harus diinisialisasi oleh rutinitas RtlInitializeBitMap .

[in] NumberToFind

Menentukan berapa banyak bit set yang berdampingan yang akan memenuhi permintaan ini.

[in] HintIndex

Menentukan posisi bit berbasis nol untuk mulai mencari rentang bit yang ditetapkan dari ukuran yang diberikan.

Nilai kembali

RtlFindSetBitsAndClear mengembalikan indeks bit awal berbasis nol untuk rentang bit yang ditetapkan dari ukuran yang diminta yang dibersihkan, atau mengembalikan 0xFFFFFFFF jika tidak dapat menemukan rentang seperti itu dalam variabel bitmap yang diberikan.

Keterangan

Untuk panggilan yang berhasil, posisi bit yang dikembalikan belum tentu setara dengan HintIndex yang diberikan. Jika perlu, RtlFindSetBitsAndClear mencari seluruh bitmap untuk menemukan rentang bit yang ditetapkan dari ukuran yang diminta. Namun, mulai mencari rentang yang diminta di dekat HintIndex, sehingga penelepon dapat menghapus rentang seperti itu lebih cepat ketika mereka dapat memberikan petunjuk yang sesuai tentang tempat untuk mulai mencari.

Pemanggil RtlFindSetBitsAndClear harus berjalan di IRQL <= APC_LEVEL jika memori yang berisi variabel bitmap dapat dipaginasi atau memori di BitMapHeader dapat dipaginasi. Jika tidak, RtlFindSetBitsAndClear dapat dipanggil di IRQL apa pun.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia dimulai dengan Windows 2000.
Target Platform Universal
Header wdm.h (termasuk Wdm.h, Ntddk.h, Ntifs.h)
Pustaka NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL (Lihat bagian Keterangan)

Lihat juga

RTL_BITMAP

RtlAreBitsSet

RtlClearAllBits

RtlClearBits

RtlFindSetBits

RtlInitializeBitMap

RtlNumberOfSetBits