USBD_AssignUrbToIoStackLocation (usbdlib.h)
Rutinitas USBD_AssignUrbToIoStackLocation dipanggil oleh driver klien untuk mengaitkan URB dengan lokasi tumpukan IRP berikutnya.
Sintaks
void USBD_AssignUrbToIoStackLocation(
[in] USBD_HANDLE USBDHandle,
[in] PIO_STACK_LOCATION IoStackLocation,
[in] PURB Urb
);
Parameter
[in] USBDHandle
Handel USBD yang diambil dalam panggilan sebelumnya ke rutinitas USBD_CreateHandle .
[in] IoStackLocation
Arahkan ke lokasi tumpukan IRP berikutnya (IO_STACK_LOCATION). Driver klien menerima pointer ke lokasi tumpukan dalam panggilan sebelumnya ke IoGetNextIrpStackLocation.
[in] Urb
Arahkan ke struktur URB yang dialokasikan oleh USBD_UrbAllocate, USBD_IsochUrbAllocate, USBD_SelectConfigUrbAllocateAndBuild, atau USBD_SelectInterfaceUrbAllocateAndBuild.
Nilai kembali
Tidak ada
Keterangan
Jika driver klien mengalokasikan URB dengan memanggil USBD_UrbAllocate, USBD_IsochUrbAllocate, USBD_SelectConfigUrbAllocateAndBuild, atau USBD_SelectInterfaceUrbAllocateAndBuild, maka driver harus memanggil USBD_AssignUrbToIoStackLocation untuk mengaitkan URB dengan IO_STACK_LOCATION yang terkait dengan IRP. Untuk URL yang dialokasikan oleh rutinitas tersebut, USBD_AssignUrbToIoStackLocation menggantikan pengaturan Parameters.Others.Argument1dari IO_STACK_LOCATION ke URB. (lihat IOCTL_INTERNAL_USB_SUBMIT_URB).
Driver klien tidak boleh memanggil USBD_AssignUrbToIoStackLocation untuk URB yang dialokasikan dengan menggunakan mekanisme lain, seperti mengalokasikan URB pada tumpukan. Jika tidak, tumpukan driver USB menghasilkan bugcheck.
Driver klien harus memanggil USBD_AssignUrbToIoStackLocation sebelum memanggil IoCallDriver untuk mengirim permintaan. USBD_AssignUrbToIoStackLocation mengisi lokasi tumpukan IRP berikutnya dengan URB. Rutinitas ini juga memperbarui anggota FileObjectdari IO_STACK_LOCATION.
Untuk contoh kode, lihat Cara Mengirimkan URB.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Membutuhkan WDK untuk Windows 8. Menargetkan Windows Vista dan versi sistem operasi Windows yang lebih baru. |
Target Platform | Desktop |
Header | usbdlib.h |
Pustaka | Usbdex.lib |
IRQL | <=DISPATCH_LEVEL |
Lihat juga
USBD_SelectConfigUrbAllocateAndBuild
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