Substituindo as páginas da folha de propriedades Driver-Supplied
Importante
A moderna plataforma de impressão é o meio preferido do Windows para comunicar com as impressoras. Recomendamos que utilize o controlador de classe da caixa de entrada IPP da Microsoft, juntamente com as Aplicações de Suporte de Impressão (PSA), para personalizar a experiência de impressão no 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 Print.
A Interface COM IPrintCoreUI2 do fornece quatro métodos que um plug-in Pscript5 de interface de utilizador executado no Windows XP e versões posteriores do sistema operativo Windows deve usar quando pretende substituir totalmente as páginas de interface de utilizador padrão do controlador principal. (O termo driver principal refere-se ao driver de impressora Unidrv ou Pscript5.) Estes métodos são os seguintes:
IPrintCoreUI2::EnumConstrainedOptions
Esses métodos são suportados somente durante a execução do plug-in da interface do utilizador nas chamadas aos métodos IPrintOemUI::DocumentPropertySheets e IPrintOemUI::DevicePropertySheets e suas rotinas de retorno de chamada para folhas de propriedades. Um plug-in de interface do usuário suporta esses métodos para exibir sua própria interface do usuário. Quando não há suporte, esses métodos retornam E_NOTIMPL.
O driver principal exibe a sua própria interface de utilizador da folha de propriedades em duas circunstâncias: para DrvDocumentPropertySheets, e para DrvDevicePropertySheets. O primeiro método exibe propriedades que se aplicam somente a documentos (propriedades adesivas de documentos), enquanto o segundo método exibe propriedades que se aplicam a um dispositivo (propriedades adesivas de dispositivo ou impressora).
O driver principal lembra o tipo de folha de propriedades que ele manipula (e, portanto, o modo -- documento-adesivo ou impressora-adesivo). O driver principal guarda essas informações de estado numa estrutura (a estrutura de OEMUIOBJ) que cria para a instância de UI. Quando o driver principal chama os métodos de interface de um plug-in, ele passa um ponteiro para uma estrutura OEMUIOBJ, de modo que, quando um plug-in invoca novamente o driver principal a partir de IPrintCoreUI2::EnumConstrainedOptions, IPrintCoreUI2::GetOptions, IPrintCoreUI2::SetOptionsou IPrintCoreUI2::WhyConstrained, esses métodos passam o ponteiro de volta para o driver principal, que assim é capaz de determinar o modo.
Para IPrintCoreUI2::EnumConstrainedOptions, IPrintCoreUI2::SetOptionse IPrintCoreUI2::WhyConstrained, apenas funcionalidades específicas do documento são suportadas durante a execução de IPrintOemUI::DocumentPropertySheets ou sua rotina de retorno de chamada de folha de propriedades e apenas funcionalidades específicas da impressora são suportadas durante a execução de IPrintOemUI::DevicePropertySheets ou sua rotina de retorno de chamada de folha de propriedades. Para IPrintCoreUI2::SetOptions, qualquer recurso cuja aderência não corresponda ao modo adesivo atual deve ser ignorado. Quando IPrintCoreUI2::EnumConstrainedOptions ou IPrintCoreUI2::WhyConstrained é chamado para uma funcionalidade cuja persistência não corresponde ao modo persistente atual, o método deve retornar E_INVALIDARG.
Para IPrintCoreUI2::GetOptions, tanto os recursos persistentes de documento como de impressora são suportados em modo persistente de documento (ou seja, quando IPrintOemUI::DocumentPropertySheets ou a sua rotina de retorno de chamada de folha de propriedades está em execução), mas apenas os recursos persistentes de impressora são suportados em modo persistente de impressora (quando IPrintOemUI::DevicePropertySheets ou a sua rotina de retorno de chamada de folha de propriedades está em execução).