Pengidentifikasi Antarmuka untuk Driver Printer
Penting
Platform cetak modern adalah sarana komunikasi pilihan Windows dengan printer. Kami menyarankan agar Anda menggunakan driver kelas kotak masuk IPP Microsoft, bersama dengan Print Support Apps (PSA), untuk menyesuaikan pengalaman cetak di Windows 10 dan 11 untuk pengembangan perangkat printer.
Untuk informasi selengkapnya, lihat Platform cetak modern dan panduan desain aplikasi dukungan Cetak.
Satu set GUID didefinisikan dalam prcomoem.h. Masing-masing GUID ini adalah pengidentifikasi antarmuka untuk salah satu antarmuka COM yang digunakan untuk komunikasi antara driver printer (Unidrv dan Pscript5) dan plug-in.
Untuk Windows 2000 dan Windows XP, GUID berikut didefinisikan:
IID_IPrintOemUI IID_IPrintOemUI2 (plug-in UI Pscript5 pada Windows XP dan versi sistem operasi Windows yang lebih baru) IID_IPrintOemDriverUIIID_IPrintCoreUI2 (plug-in UI Pscript5 pada Windows XP dan versi sistem operasi Windows yang lebih baru) IID_IPrintOemUni IID_IPrintOemUni2 (plug-in render Unidrv pada Windows XP dan versi yang lebih baru dari sistem operasi Windows) IID_IPrintOemUni3 (Plug-in render Unidrv pada Windows Vista dan versi sistem operasi Windows yang lebih baru) IID_IPrintOemDriverUni IID_IPrintOemPSIID_IPrintOemPS2 (plug-in render Pscript5 pada Windows XP dan versi sistem operasi Windows yang lebih baru) IID_IPrintOemDriverPSIID_IPrintCorePS2 (plug-in render Pscript5 pada Windows XP dan versi sistem operasi Windows yang lebih baru) Setiap GUID mengidentifikasi satu versi satu antarmuka. Jika versi baru antarmuka ditentukan, GUID baru ditambahkan ke daftar.
Plug-in antarmuka pengguna dan plug-in penyajian harus mengidentifikasi versi antarmuka yang mereka dukung. Driver printer (Unidrv atau Pscript5) memanggil metode IUnknown::QueryInterface plug-in (dijelaskan dalam dokumentasi Windows SDK), menentukan pengidentifikasi antarmuka sebagai input. Jika plug-in mendukung versi yang ditentukan, metode harus mengembalikan penunjuk ke antarmuka bersama dengan status pengembalian S_OK. Jika tidak, itu harus mengembalikan E_NOINTERFACE. Driver dimulai dengan pengidentifikasi antarmuka untuk versi terbaru dan terus memanggil QueryInterface dengan pengidentifikasi versi sebelumnya sampai metode mengembalikan S_OK atau driver menghabiskan daftar pengidentifikasi versi.
Demikian juga, Unidrv dan Pscript5 menyediakan metode IUnknown::QueryInterface untuk antarmuka IPrintOemDriverUI, IPrintCoreUI2, IPrintOemDriverUni, IPrintOemDriverPS, atau IPrintCorePS2 COM. Plug-in harus memanggil metode QueryInterface antarmuka yang sesuai untuk menentukan versi antarmuka yang didukung driver dan untuk menerima penunjuk antarmuka.