Fungsi WdfCmResourceListAppendDescriptor (wdfresource.h)

[Hanya berlaku untuk KMDF]

Metode WdfCmResourceListAppendDescriptor menambahkan pendeskripsi sumber daya ke akhir daftar sumber daya tertentu.

Sintaks

NTSTATUS WdfCmResourceListAppendDescriptor(
  [in] WDFCMRESLIST                    List,
  [in] PCM_PARTIAL_RESOURCE_DESCRIPTOR Descriptor
);

Parameter

[in] List

Handel ke objek daftar sumber daya kerangka kerja yang mewakili daftar sumber daya perangkat keras untuk perangkat.

[in] Descriptor

Penunjuk ke struktur CM_PARTIAL_RESOURCE_DESCRIPTOR yang menjelaskan sumber daya perangkat keras.

Nilai kembali

WdfCmResourceListAppendDescriptor mengembalikan STATUS_SUCCESS jika operasi berhasil. Jika tidak, metode ini mungkin mengembalikan salah satu nilai berikut:

Menampilkan kode Deskripsi
STATUS_INVALID_PARAMETER
Parameter yang tidak valid ditentukan.
STATUS_ACCESS_DENIED
Driver tidak diizinkan untuk menambahkan deskriptor ke konfigurasi logis yang ditentukan parameter Daftar . Misalnya, driver tidak dapat mengubah konfigurasi logis yang diterima fungsi panggilan balik EvtDevicePrepareHardware atau EvtDeviceReleaseHardware .
STATUS_INSUFFICIENT_RESOURCES
Kerangka kerja tidak dapat mengalokasikan ruang untuk menyimpan deskriptor yang ditentukan parameter Deskriptor .
 

Pemeriksaan bug sistem terjadi jika driver memasok handel objek yang tidak valid.

Keterangan

Kerangka kerja menyalin konten struktur CM_PARTIAL_RESOURCE_DESCRIPTOR ke penyimpanan internal, sehingga rutinitas driver yang memanggil WdfCmResourceListAppendDescriptor dapat mengalokasikan struktur secara lokal. Setelah driver memanggil WdfCmResourceListAppendDescriptor , driver dapat menggunakan kembali struktur CM_PARTIAL_RESOURCE_DESCRIPTOR .

Untuk informasi selengkapnya tentang daftar sumber daya, lihat Sumber Daya Perangkat Keras untuk Driver Framework-Based.

Contoh

Contoh kode berikut menambahkan deskriptor sumber daya ke akhir daftar sumber daya yang diterima fungsi panggilan balik EvtDeviceResourcesQuery .

NTSTATUS
PdoEvtDeviceResourcesQuery(
    IN WDFDEVICE  Device,
    IN WDFCMRESLIST  Resources
    )
{
    CM_PARTIAL_RESOURCE_DESCRIPTOR newDescriptor;
...
    newDescriptor.Type = CmResourceTypePort;
    newDescriptor.ShareDisposition = CmResourceShareDeviceExclusive;
    newDescriptor.Flags = CM_RESOURCE_PORT_IO|CM_RESOURCE_PORT_16_BIT_DECODE;
    newDescriptor.u.Port.Length = 1;
    newDescriptor.u.Port.Start = 0;

    status = WdfCmResourceListAppendDescriptor(
                                               Resources,
                                               &newDescriptor
                                               );
...

}

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

CM_PARTIAL_RESOURCE_DESCRIPTOR

EvtDevicePrepareHardware

EvtDeviceReleaseHardware

EvtDeviceResourcesQuery

WdfCmResourceListInsertDescriptor