Métodos para especificar páginas
Importante
A plataforma de impressão moderna é o meio preferencial do Windows para se comunicar com as impressoras. Recomendamos que você use o driver de classe de caixa de entrada IPP da Microsoft juntamente com PSA (Aplicativos de Suporte à Impressão) 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 Plataformade impressão moderna e o Guia de design do aplicativo de suporte de impressão.
Um aplicativo pode usar qualquer um dos três métodos para especificar páginas de folha de propriedades para CPSUI. Cada um dos métodos a seguir envolve a chamada da função ComPropSheet do CPSUI, especificando um dos códigos de função ComPropSheet.
Fornecer uma estrutura COMPROPSHEETUI
Se um aplicativo descrever uma página de folha de propriedades passando uma estrutura COMPROPSHEETUI para ComPropSheet, ele poderá:
Use uma das páginas e modelos fornecidos pelo CPSUI para especificar um tipo de página padrão predefinido que as DLLs da interface da impressora podem usar para folhas de propriedades da impressora.
Especifique um conjunto de opções de folha de propriedades modificáveis pelo usuário que serão exibidas na página.
Especifique uma função de retorno de chamada de evento de página que o CPSUI chamará quando um usuário exibir ou modificar as opções da página.
Fornecer uma estrutura PROPSHEETPAGE
Uma estrutura PROPSHEETPAGE pode ser usada para descrever uma página de folha de propriedades, se a página não puder ser construída usando as caixas de diálogo comuns (padrão) disponíveis ao usar uma estrutura COMPROPSHEETUI. As DLLs da interface da impressora normalmente não precisam usar esse método.
Fornecer uma função de retorno de chamada
Um aplicativo pode passar ComPropSheet o endereço de uma função de retorno de chamada do tipo PFNPROPSHEETUI que o CPSUI chama imediatamente. A função de retorno de chamada é responsável por chamar o próprio ComPropSheet para criar páginas de folha de propriedades.
O spooler de impressão usa esse método para informar o CPSUI sobre a existência de funções DrvDocumentPropertySheets e DrvDevicePropertySheets da DLL de interface de impressora. Da mesma forma, os drivers Unidrv and Pscript usam a técnica para informar o CPSUI sobre a existência dos métodos COM IPrintOemUI::DocumentPropertySheets e IPrintOemUI::DevicePropertySheets em plug-ins interface do usuário.
Qualquer que seja o método usado para especificar novas páginas, as páginas devem ser atribuídas a um grupo pai passando um identificador de grupo pai para a função ComPropSheet.