Acessando interfaces de Plug-In de drivers de impressora
Importante
Recomendamos que você use o driver de classe de caixa de entrada IPP da Microsoft, juntamente com o PSA (Aplicativos de Suporte para Impressão), para personalizar a experiência de impressão em Windows 10 e 11 para o desenvolvimento de dispositivos de impressora.
Para obter mais informações, consulte o Guia de design do aplicativo de suporte para impressão.
Se um plug-in de interface do usuário ou plug-in de renderização estiver instalado, o driver de impressora (Unidrv ou Pscript5) usará a seguinte sequência de chamadas para obter acesso à interface IPrintOemUI, IPrintOemUI2, IPrintOemUni, IPrintOemUni2, IPrintOemUni3, IPrintOemPS ou IPrintOemPS2 COM:
O driver chama LoadLibrary para carregar a DLL do plug-in, o que causa uma chamada para a função do
DllMain
plug-in.O driver chama a função do
DllGetClassObject
plug-in, que retorna um ponteiro para a interface IClassFactory do plug-in.O driver chama o método CreateInstance da interface IClassFactory, especificando um identificador de interface de IID_IUnknown, o que faz com que o método crie uma instância da interface IPrintOemUI, IPrintOemUI2, IPrintOemUI2, IPrintOemUni, IPrintOemUni2, IPrintOemUni3, IPrintOemPS ou IPrintOemPS2 e retorne um ponteiro para a interface IUnknown da instância.
O driver chama o método QueryInterface da interface IUnknown para determinar qual versão da interface IPrintOemUI, IPrintOemUI2, IPrintOemUni, IPrintOemUni2, IPrintOemUni3, IPrintOemPS ou IPrintOemPS2 tem suporte do plug-in e para receber um ponteiro para a interface com suporte.
O driver chama o método da interface de
PublishDriverInterface
plug-in para disponibilizar a interface IPrintOemDriverUI, IPrintCoreUI2, IPrintOemDriverUni, IPrintOemDriverPS ou IPrintCorePS2 do driver para o plug-in.Se o plug-in tiver implementado a interface IPrintOemUni , o driver chamará IPrintOemUni::GetImplementedMethod para determinar quais métodos de interface foram implementados. Da mesma forma, se o plug-in tiver implementado a interface IPrintOemUni2 , o driver chamará IPrintOemUni2::GetImplementedMethod para a mesma finalidade.
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de