Fungsi WdfPdoInitAssignInstanceID (wdfpdo.h)
[Hanya berlaku untuk KMDF]
Metode WdfPdoInitAssignInstanceID memperbarui ID instans untuk perangkat anak.
Sintaks
NTSTATUS WdfPdoInitAssignInstanceID(
[in] PWDFDEVICE_INIT DeviceInit,
[in] PCUNICODE_STRING InstanceID
);
Parameter
[in] DeviceInit
Penunjuk ke struktur WDFDEVICE_INIT .
[in] InstanceID
Penunjuk ke struktur UNICODE_STRING yang berisi string ID instans . Driver dapat mengalokasikan buffer string dari kumpulan halaman.
Nilai kembali
Jika operasi berhasil, metode mengembalikan STATUS_SUCCESS. Nilai pengembalian tambahan meliputi:
Menampilkan kode | Deskripsi |
---|---|
|
Driver menginisialisasi FDO alih-alih PDO. |
|
Driver tidak dapat mengalokasikan ruang untuk menyimpan string ID instans. |
Metode ini mungkin juga mengembalikan nilai NTSTATUS lainnya.
Keterangan
Untuk informasi selengkapnya tentang ID instans, lihat String Identifikasi Perangkat.
Driver harus memanggil WdfPdoInitAssignInstanceID sebelum memanggil WdfDeviceCreate. Untuk informasi selengkapnya tentang memanggil WdfDeviceCreate, lihat Membuat Objek Perangkat Kerangka Kerja.
Contoh
Contoh kode berikut mengonversi nomor seri perangkat menjadi string Unicode lalu mendaftarkan string Unicode sebagai ID instans perangkat.
DECLARE_UNICODE_STRING_SIZE(instanceID, INSTANCEID_LENGTH);
status = RtlIntegerToUnicodeString(
SerialNo,
BASE_DEC,
&instanceID
);
status = WdfPdoInitAssignInstanceID(
pDeviceInit,
&instanceID
);
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Versi KMDF minimum | 1,0 |
Header | wdfpdo.h (termasuk Wdf.h) |
Pustaka | Wdf01000.sys (lihat Penerapan Versi Pustaka Kerangka Kerja.) |
IRQL | PASSIVE_LEVEL |
Aturan kepatuhan DDI | ChildDeviceInitAPI(kmdf), DriverCreate(kmdf), InitFreeDeviceCallback(kmdf), InitFreeDeviceCreate(kmdf), InitFreeNull(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf) |