Udostępnij przez


Publikowanie interfejsów

Ważny

Nowoczesna platforma drukowania jest preferowanym sposobem komunikacji z drukarkami w systemie Windows. Zalecamy używanie sterownika klasy skrzynki odbiorczej IPP firmy Microsoft wraz z aplikacjami do obsługi drukowania (PSA), aby dostosować środowisko drukowania w systemie Windows 10 i 11 na potrzeby opracowywania urządzeń drukarki.

Aby uzyskać więcej informacji, zobacz Print Support App v1 and v2 design guide (Przewodnik projektowania aplikacji do obsługi wydruku w wersji 1 i 2).

Wtyczki zwykle odbierają wystąpienia obiektów implementujących zachowanie w podstawowych sterownikach za pomocą mechanizmu nazywanego publikowaniem. Interfejsy pomocnika IPrintCoreHelper , IPrintCoreHelperPSi IPrintCoreHelperUni są publikowane za pomocą tego samego modelu, z kilkoma drobnymi różnicami.

Poniższe listy zawierają podsumowanie kolejności publikowania obiektów w interfejsie użytkownika i modułach renderowania dla systemów Unidrv i Pscript5. Dla każdego z czterech modułów numer na liście wskazuje kolejność publikowania obiektu, a interfejsy COM o nazwie wskazują interfejsy implementowane przez obiekt.

W dowolnym module sterownik powinien przechowywać tylko jeden z opublikowanych obiektów, zapisując wskaźnik i wywołując metodę AddRef dla tego obiektu. Gdy wtyczka przechowuje odwołanie do obiektu, wtyczka powinna zwrócić S_OK. Sterownik podstawowy zatrzyma publikowanie interfejsów. Ten model nie różni się znacząco od poprzedniego mechanizmu publikacji.

W kontekście interfejsu użytkownika obiekty są publikowane w interfejsie IPrintOemUI w klasie, której identyfikator klasy jest CLSID_OEMUI. W kontekście renderowania obiekty są publikowane w interfejsach IPrintOemPS lub IPrintOemUni.

Obiekty oznaczone gwiazdką (*) na poniższych listach są publikowane w interfejsie IPrintOemPrintTicketProvider.

Kolejność publikowania modułu Unidrv UI

  1. IUnknown i *IPrintCoreHelper i IPrintCoreHelperUni

  2. IUnknown i IPrintOemDriverUI

Kolejność publikowania modułu renderowania Unidrv

  1. IUnknown i IPrintCoreHelper i IPrintCoreHelperUni

  2. IUnknown i IPrintOemDriverUni

Moduł interfejsu użytkownika Pscript5 — kolejność publikowania

  1. IUnknown i *IPrintCoreHelper i IPrintCoreHelperPS

  2. IUnknown oraz IPrintCoreUI2

  3. IUnknown i IPrintOemDriverUI

kolejność publikowania modułu renderowania Pscript5

  1. IUnknown i IPrintCoreHelper i IPrintCoreHelperPS

  2. IUnknown i IPrintCorePS2