Fungsi WdfIoResourceRequirementsListInsertIoResList (wdfresource.h)
[Berlaku untuk KMDF saja]
Metode WdfIoResourceRequirementsListInsertIoResList menyisipkan konfigurasi logis ke dalam daftar persyaratan sumber daya.
Sintaks
NTSTATUS WdfIoResourceRequirementsListInsertIoResList(
[in] WDFIORESREQLIST RequirementsList,
[in] WDFIORESLIST IoResList,
[in] ULONG Index
);
Parameter
[in] RequirementsList
Handel ke objek daftar persyaratan sumber daya kerangka kerja yang mewakili daftar persyaratan sumber daya perangkat.
[in] IoResList
Handel ke objek daftar rentang sumber daya kerangka kerja yang mewakili konfigurasi logis sumber daya perangkat keras untuk perangkat.
[in] Index
Nilai berbasis nol yang digunakan sebagai indeks ke dalam kumpulan konfigurasi logis yang sudah ada dalam daftar persyaratan sumber daya yang ditentukan RequirementsList . Untuk menambahkan konfigurasi ke akhir daftar, tentukan WDF_INSERT_AT_END atau nilai pengembalian dari WdfIoResourceRequirementsListGetCount.
Nilai kembali
WdfIoResourceRequirementsListInsertIoResList mengembalikan STATUS_SUCCESS jika operasi berhasil. Jika tidak, metode ini mungkin mengembalikan salah satu nilai berikut:
Menampilkan kode | Deskripsi |
---|---|
|
Parameter yang tidak valid seperti yang ditentukan. |
|
Objek resource-requirements-list yang ditentukan tidak memiliki objek resource-range-list yang ditentukan. |
|
Kerangka kerja tidak dapat mengalokasikan ruang untuk menyimpan objek daftar rentang sumber daya. |
|
Nilai yang ditentukan untuk parameter Indeks terlalu besar. |
Pemeriksaan bug sistem terjadi jika driver memasok handel objek yang tidak valid.
Keterangan
Metode WdfIoResourceRequirementsListInsertIoResList menyisipkan konfigurasi logis yang ditentukan parameter IoResList ke dalam daftar persyaratan sumber daya yang ditentukan parameter RequirementsList , di depan konfigurasi logis yang diidentifikasi nilai Indeks .
Untuk menambahkan konfigurasi logis ke akhir daftar persyaratan sumber daya, gunakan WDF_INSERT_AT_END atau nilai pengembalian dari WdfIoResourceRequirementsListGetCount sebagai nilai Indeks . Atau, gunakan metode WdfIoResourceRequirementsListAppendIoResList .
Untuk informasi selengkapnya tentang daftar persyaratan sumber daya, lihat Sumber Daya Perangkat Keras untuk Driver Framework-Based.
Contoh
Contoh kode berikut menunjukkan bagaimana fungsi panggilan balik EvtDeviceResourceRequirementsQuery dapat membuat dua konfigurasi logis kosong dan menambahkannya ke daftar persyaratan sumber daya.
NTSTATUS
Example_EvtDeviceResourceRequirementsQuery(
IN WDFDEVICE Device,
IN WDFIORESREQLIST RequirementsList
)
{
NTSTATUS status;
WDFIORESLIST logConfig1;
WDFIORESLIST logConfig2;
status = WdfIoResourceListCreate(
RequirementsList,
WDF_NO_OBJECT_ATTRIBUTES,
&logConfig1
);
if (!NT_SUCCESS(status)) {
return status;
}
status = WdfIoResourceRequirementsListAppendIoResList(
RequirementsList,
logConfig1
);
if (!NT_SUCCESS(status)) {
return status;
}
status = WdfIoResourceListCreate(
RequirementsList,
WDF_NO_OBJECT_ATTRIBUTES,
&logConfig2
);
if (!NT_SUCCESS(status)) {
return status;
}
status = WdfIoResourceRequirementsListInsertIoResList(
RequirementsList,
logConfig2,
WDF_INSERT_AT_END
);
if (!NT_SUCCESS(status)) {
return status;
}
...
}
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) |