Compartilhar via


Usando manifestos de tema

Importante

A plataforma de impressão moderna é o meio preferido 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.

Se você adicionar um manifesto de tema ao driver de impressão para Windows XP, poderá garantir que os elementos da interface do usuário no driver correspondam ao estilo visual do Windows XP.

O estilo visual no Windows XP é o resultado de alterações nos Controles Comuns do Shell (Comctl32.dll, versão 6.0). Esta versão é quase totalmente compatível com a versão 5.0. No entanto, alguns problemas podem ocorrer com drivers que foram escritos para a versão 5.0 quando eles são executados na versão 6.0. Para evitar esses problemas, o sistema de impressão não força os drivers a usar Comctl32.dll versão 6.0. Para obter um manifesto de tema de exemplo, consulte \src\print\oemdll\ThemeUI\ThemeUI.Manifest no WDK.

Se você adicionar um manifesto de tema ao driver que especifica a dependência da versão 6 do Comctl32.dll, ele funcionará corretamente no Windows XP e versões posteriores do sistema operacional, bem como no Windows 2000. O Windows 2000 ignora o manifesto; portanto, qualquer uso do contexto de ativação falha normalmente. Observe que, como Comctl32.dll versão 5.0 não está contida no GAC (cache de assembly global), um manifesto que especifica uma dependência dessa versão da DLL interrompe o componente. Nesse caso, a chamada para a API do Win32 LoadLibrary falha ao tentar carregar Comctl32.dll.

Um aplicativo pode ter um manifesto global (ou aplicativo). Se esse manifesto global contiver um redirecionamento para usar Comctl32.dll versão 6.0, isso forçará toda a interface do usuário que o aplicativo cria a usar o mesmo tema. Um resultado disso é que os drivers de impressora iniciados de um aplicativo com um manifesto global podem ser forçados a usar Comctl32.dll versão 6.0, independentemente de qualquer redirecionamento de Comctl32.dll no manifesto do driver.

Para obter mais informações sobre manifestos e assemblies, contextos de ativação, aplicativos isolados e compartilhamento de assembly lado a lado, consulte a documentação do SDK do Microsoft Windows.