Fungsi WdfIoResourceRequirementsListGetIoResList (wdfresource.h)
[Berlaku untuk KMDF saja]
Metode WdfIoResourceRequirementsListGetIoResList mengembalikan handel ke objek daftar rentang sumber daya kerangka kerja yang mewakili konfigurasi logis tertentu dalam daftar persyaratan sumber daya tertentu.
Sintaks
WDFIORESLIST WdfIoResourceRequirementsListGetIoResList(
[in] WDFIORESREQLIST RequirementsList,
[in] ULONG Index
);
Parameter
[in] RequirementsList
Handel ke objek daftar persyaratan sumber daya kerangka kerja yang mewakili daftar persyaratan sumber daya perangkat.
[in] Index
Nilai berbasis nol yang digunakan sebagai indeks ke dalam daftar persyaratan sumber daya yang ditentukan RequirementsList .
Nilai kembali
WdfIoResourceRequirementsListGetIoResList mengembalikan handel ke objek daftar rentang sumber daya kerangka kerja yang mewakili konfigurasi logis yang diidentifikasi parameter Indeks , jika nilai indeks valid. Jika tidak, metode mengembalikan NULL.
Pemeriksaan bug sistem terjadi jika driver memasok handel objek yang tidak valid.
Keterangan
Untuk informasi selengkapnya tentang daftar persyaratan sumber daya, lihat Sumber Daya Perangkat Keras untuk Driver Framework-Based.
Contoh kode berikut mencari daftar persyaratan sumber daya perangkat untuk menemukan deskriptor sumber daya pertama yang menjelaskan sumber daya interupsi.
NTSTATUS
Example_EvtDeviceFilterRemoveResourceRequirements(
IN WDFDEVICE Device,
IN WDFIORESREQLIST RequirementsList
)
{
ULONG i, j, reqCount, resCount;
BOOLEAN descriptorFound = FALSE;
//
// Obtain the number of logical configurations.
//
reqCount = WdfIoResourceRequirementsListGetCount(RequirementsList);
//
// Search each logical configuration.
//
for (i = 0; i < reqCount; i++) {
WDFIORESLIST reslist;
if (descriptorFound) {
break;
}
reslist = WdfIoResourceRequirementsListGetIoResList(
RequirementsList,
i
);
//
// 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 an interrupt descriptor.
//
if (descriptor->Type == CmResourceTypeInterrupt) {
descriptorFound = TRUE;
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