Metode IWDFObject::AssignContext (wudfddi.h)

[Peringatan: UMDF 2 adalah versi terbaru UMDF dan pengganti UMDF 1. Semua driver UMDF baru harus ditulis menggunakan UMDF 2. Tidak ada fitur baru yang ditambahkan ke UMDF 1 dan ada dukungan terbatas untuk UMDF 1 pada versi Windows 10 yang lebih baru. Driver Universal Windows harus menggunakan UMDF 2. Untuk informasi selengkapnya, lihat Mulai menggunakan UMDF.]

Metode AssignContext mendaftarkan konteks dan fungsi panggilan balik pembersihan yang disediakan driver untuk objek .

Sintaks

HRESULT AssignContext(
  [in, optional] __drv_aliasesMem IObjectCleanup *pCleanupCallback,
  [in, optional] __drv_aliasesMem void           *pContext
);

Parameter

[in, optional] pCleanupCallback

Penunjuk ke antarmuka IObjectCleanup yang berisi fungsi panggilan balik pembersihan, yang melakukan operasi pembersihan untuk objek jika menjadi tidak valid. Parameter ini bersifat opsional. Driver dapat melewati NULL jika driver tidak memerlukan pemberitahuan ketika objek dibersihkan.

[in, optional] pContext

Penunjuk ke konteks untuk mendaftar. NULL adalah konteks yang valid.

Mengembalikan nilai

AssignContext mengembalikan S_OK jika operasi berhasil. Jika tidak, metode ini mengembalikan salah satu kode kesalahan yang didefinisikan dalam Winerror.h.

Keterangan

Driver memanggil AssignContext untuk mendaftarkan konteks dan meminta pemberitahuan ketika objek menjadi tidak valid. Dalam panggilan AssignContext , driver meneruskan pointer ke antarmuka IObjectCleanup di parameter pCleanupCallback untuk mendaftarkan IObjectCleanup. Perhatikan bahwa kerangka kerja secara internal menyimpan referensi ke antarmuka IObjectCleanup yang disediakan saat objek valid. Ketika objek menjadi tidak valid, kerangka kerja memanggil metode IObjectCleanup::OnCleanup untuk memberi tahu driver. Kerangka kerja secara otomatis merilis referensi ke IObjectCleanup yang disediakan setelah memanggil IObjectCleanup::OnCleanup.

Pada waktu tertentu, hanya satu konteks yang terkait dengan setiap instans objek yang dapat ada. Upaya untuk mendaftarkan konteks tambahan gagal.

Konteks hanya dapat dikaitkan dengan objek yang dalam status valid. Misalnya, upaya untuk mengaitkan konteks dengan objek yang sedang dalam proses penghapusan gagal.

Karena konteksnya bukan antarmuka Model Objek Komponen (COM), driver tidak boleh memperlakukan konteks seperti itu. Misalnya, driver tidak dapat memanggil metode AddRef pada konteks.

Metode IWDFObject::RetrieveContext dapat digunakan untuk mengambil konteks yang sebelumnya terdaftar melalui AssignContext.

Contoh

Untuk contoh kode tentang cara menggunakan metode AssignContext , lihat IWDFIoTarget::FormatRequestForWrite.

Persyaratan

Persyaratan Nilai
Akhir dukungan Tidak tersedia di UMDF 2.0 dan yang lebih baru.
Target Platform Desktop
Versi UMDF minimum 1,5
Header wudfddi.h (termasuk Wudfddi.h)
DLL WUDFx.dll

Lihat juga

IObjectCleanup

IObjectCleanup::OnCleanup

IWDFObject

IWDFObject::RetrieveContext