Partilhar via


GetSupportedVersions

Important

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 Guia de design do aplicativo de suporte de impressão v1 e v2.

O método IPrintTicketProvider::GetSupportedVersions retorna os números de versão principais dos esquemas de impressão suportados pelo driver de impressão. Por enquanto, a versão 1 é a única versão que existe, então esse método deve retornar apenas uma versão suportada.

A implementação mostrada no código de exemplo a seguir funcionará para a versão inicial do Windows Vista e até que uma nova versão seja adicionada. Quando uma nova versão é suportada, esse valor será alterado.

STDMETHODIMP 
CPrintTicketProvider::
GetSupportedVersions(THIS_ HANDLE hPrinter,
                           INT *ppVersions[],
                           INT *pcVersions)
{
    if ( (*ppVersions = (INT*)CoTaskMemAlloc(sizeof(INT))) != NULL)
    {
         (*ppVersions)[0] = 1;  // Version 1
        *pcVersions = 1; // 1 supported version
        return S_OK;
    }
    else
        return E_OUTOFMEMORY;
}