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

IO_RESOURCE_DESCRIPTOR

WdfIoResourceListGetCount

WdfIoResourceListGetDescriptor

WdfIoResourceRequirementsListGetCount