Fungsi WdfIoResourceListRemoveByDescriptor (wdfresource.h)
[Berlaku untuk KMDF saja]
Metode WdfIoResourceListRemoveByDescriptor menghapus deskriptor sumber daya dari konfigurasi logis daftar persyaratan sumber daya.
Sintaks
void WdfIoResourceListRemoveByDescriptor(
[in] WDFIORESLIST ResourceList,
[in] PIO_RESOURCE_DESCRIPTOR Descriptor
);
Parameter
[in] ResourceList
Handel ke objek daftar rentang sumber daya kerangka kerja yang mewakili konfigurasi logis sumber daya perangkat keras untuk perangkat.
[in] Descriptor
Penunjuk ke struktur IO_RESOURCE_DESCRIPTOR yang menjelaskan sumber daya perangkat keras.
Nilai kembali
Tidak ada
Keterangan
Pemeriksaan bug terjadi jika driver menyediakan handel objek yang tidak valid.
Metode WdfIoResourceListRemoveByDescriptor menghapus deskriptor sumber daya yang cocok dengan parameter Descriptor . Untuk menemukan kecocokan, metode membandingkan deskriptor sumber daya yang ditentukan dengan deskriptor sumber daya dalam konfigurasi logis, byte untuk byte.
Ketika WdfIoResourceListRemoveByDescriptor menghapus deskriptor sumber daya yang memiliki nilai indeks n, nilai indeks deskriptor sumber daya berikutnya berubah dari n+1 ke n.
Untuk informasi selengkapnya tentang daftar persyaratan sumber daya dan konfigurasi logis, lihat Sumber Daya Perangkat Keras untuk Driver Framework-Based.
Contoh
Contoh kode berikut mencari konfigurasi logis untuk deskriptor sumber daya yang berisi alamat port tertentu, dan menghapus deskriptor sumber daya tersebut.
IO_RESOURCE_DESCRIPTOR descriptor;
ULONG resCount, j;
//
// Get the number of resource descriptors that
// are in this logical configuration.
//
resCount = WdfIoResourceListGetCount(reslist);
for (j = 0; j < resCount; j++) {
PIO_RESOURCE_DESCRIPTOR descriptor;
//
// Get the next resource descriptor.
//
descriptor = WdfIoResourceListGetDescriptor(
reslist,
j
);
//
// Stop if this descriptor is the port descriptor that
// we're looking for, and remove the descriptor.
//
if (descriptor->Type == CmResourceTypePort) {
if ((descriptor->u.port.MinimumAddress) == PORT_RANGE_A) {
WdfIoResourceListRemoveByDescriptor(
Reslist,
descriptor
);
break;
}
}
}
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Versi KMDF minimum | 1,0 |
Header | wdfresource.h (termasuk Wdf.h) |
Pustaka | Wdf01000.sys (lihat Penerapan Versi Pustaka Kerangka Kerja.) |
IRQL | <=DISPATCH_LEVEL |
Aturan kepatuhan DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk