Método IPrintOemUI::P ublishDriverInterface (prcomoem.h)
O IPrintOemUI::PublishDriverInterface
método permite que um plug-in de interface do usuário obtenha a interface IPrintOemDriverUI do driver Unidrv ou Pscript5, IPrintCoreUI2, IPrintCoreHelperPS ou IPrintCoreHelperUni .
Sintaxe
HRESULT PublishDriverInterface(
IUnknown *pIUnknown
);
Parâmetros
pIUnknown
Ponteiro fornecido pelo chamador para a interface IUnknown da interface COM IPrintCoreUI2 do driver, interface COM IPrintOemDriverUI, interface IPrintCoreHelperPS ou interface IPrintCoreHelperUni. Consulte Observações.
Valor retornado
O método deve retornar um dos valores a seguir.
Código de retorno | Descrição |
---|---|
|
A operação foi realizada com êxito. |
|
Falha na operação. |
Comentários
O driver Pscript5 dá suporte às interfaces IPrintCoreUI2, IPrintOemDriverUI e IPrintCoreHelperPS . O Unidrv dá suporte às interfaces IPrintOemDriverUI e IPrintCoreHelperUni . Os plug-ins de interface do usuário para ambos os tipos de driver devem implementar o IPrintOemUI::PublishDriverInterface
método .
O método deve retornar informações sobre suas interfaces Pscript5 com suporte da seguinte maneira:
-
O driver Pscript5 primeiro chama o
IPrintOemUI::PublishDriverInterface
método com o ponteiro pIUnknown definido como a interface IUnknown da instância IPrintCoreUI2. Se o plug-in da interface do usuário puder usar a interface IPrintCoreUI2 , o método deverá retornar S_OK. Caso contrário, o plug-in deverá retornar E_FAIL. -
Se o plug-in tiver retornado E_FAIL, o driver Pscript5 chamará o
IPrintOemUI::PublishDriverInterface
método novamente, mas com o ponteiro pIUnknown definido como a interface IUnknown da instância IPrintOemDriverUI. Se o plug-in puder usar a interface IPrintOemDriverUI , o método deverá retornar S_OK. Caso contrário, o plug-in deverá retornar E_FAIL. -
Se o método IPrintOemUI::GetInfo do plug-in tiver retornado um valor de OEMPUBLISH_IPRINTCOREHELPER no pBuffer em resposta a uma chamada com dwMode definido como OEMGI_GETREQUESTEDHELPERINTERFACES, o driver Pscript5 chamará o
IPrintOemUI::PublishDriverInterface
método novamente, mas com o ponteiro pIUnknown definido como um objeto que implementa as interfaces IPrintCoreHelperPS e IPrintCoreHelper . Se o plug-in puder usar a interface IPrintCoreHelperPS ou IPrintCoreHelper , o método deverá retornar S_OK. Caso contrário, o método deverá retornar E_FAIL.
-
O driver Unidrv primeiro chama o
IPrintOemUI::PublishDriverInterface
método com o ponteiro pIUnknown definido como a interface IUnknown da instância IPrintOemDriverUI. Se o plug-in puder usar a interface IPrintOemDriverUI , o método deverá retornar S_OK. Caso contrário, o plug-in deverá retornar E_FAIL. -
Se o método IPrintOemUI::GetInfo do plug-in tiver retornado um valor de OEMPUBLISH_IPRINTCOREHELPER no pBuffer em resposta a uma chamada com dwMode definido como OEMGI_GETREQUESTEDHELPERINTERFACES, o driver Unidrv chamará o
IPrintOemUI::PublishDriverInterface
método novamente, mas com o ponteiro pIUnknown definido como um objeto que implementa as interfaces IPrintCoreHelperUni e IPrintCoreHelper . Se o plug-in usar a interface IPrintCoreHelperUni ou IPrintCoreHelper , o método deverá retornar S_OK. Caso contrário, o método deverá retornar E_FAIL.
IPrintOemUI::PublishDriverInterface
, o plug-in não receberá mais chamadas. Se o plug-in da interface do usuário chamará os métodos de interface IPrintCoreUI2, IPrintOemDriverUI, IPrintCoreHelperPS ou IPrintCoreHelperUni, ele deverá usar o ponteiro de interface IUnknown recebido para chamar IUnknown::QueryInterface (descrito na documentação do SDK do Microsoft Windows) para obter um ponteiro para a versão com suporte do driver do IPrintCoreUI2, Interface IPrintOemDriverUI, IPrintCoreHelperPS ou IPrintCoreHelperUni. Para obter mais informações, consulte Identificadores de interface para drivers de impressora.
Durante o processamento de cada função DDI, os plug-ins de interface do usuário não devem misturar o uso de métodos das interfaces pré-Windows Vista (por exemplo, a interface IPrintOemDriverUI ou IPrintCoreUI2 ) e os novos métodos das interfaces do Windows Vista (por exemplo, IPrintCoreHelperUni ou IPrintCoreHelperPS) para ler ou gravar configurações do driver. Por exemplo, durante o método IPrintOemUI::D ocumentPropertySheets , o plug-in da interface do usuário não deve usar o método IPrintOemDriverUI::D rvUpdateUISetting para gravar configurações e usar o método IPrintCoreHelper::GetOption para ler as configurações. Por outro exemplo, durante o método IPrintOemUI::P rinterEvent , o plug-in da interface do usuário não deve usar o método IPrintCoreUI2::GetOptions para ler as configurações e usar o método IPrintCoreHelper::SetOptions para gravar configurações. Não há suporte para a sincronização da leitura e gravação das configurações entre essas diferentes versões de interfaces.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Área de Trabalho |
Cabeçalho | prcomoem.h (inclua Prcomoem.h) |