O que significa “Ativar o Windows para priorizar manifestos externos”?

2

Algumas aplicações não são bem dimensionadas em telas de alta resolução. Uma solução proposta para isso no Windows (por exemplo, para aplicativos do Adobe CS6 ) é "Ativar o Windows para priorizar manifestos externos " com uma alteração no registro, em seguida, crie um manifesto para o aplicativo que instrui o Windows a aplicar o seu dimensionamento de UI padrão.

Acredito firmemente em não fazer alterações no nível do sistema, como alterações no registro, sem primeiro entender o que elas significam. Eu tentei pesquisar habilitar o Windows para priorizar manifestos externos para aprender mais, mas tudo o que eu encontrei são exemplos desse hack sendo usado para fazer com que vários aplicativos teimosos escalem em telas de alta resolução.

Acredito que essa alteração no registro essencialmente permite que um determinado tipo de arquivo de configuração ( .manifest ) seja lido quando os aplicativos são iniciados (?). Eu gostaria de entender quais são as implicações de habilitá-los. O mais próximo que encontrei de uma resposta em minha pesquisa é este promissor, mas muito menos do que comentário autoritativo nos fóruns da Adobe . Eu gostaria essencialmente de saber se isso é verdade ou não:

As far as other implications to the registry change, as long as you don't have other .manifest files along with your executables that are in conflict with those within the executables themselves - which should be very uncommon - it seems to be a change with little downside.

Em particular (em ordem):

  1. É verdade que essa alteração no registro não afetará nenhum comportamento do sistema, exceto nos casos em que eu criar manualmente um arquivo de manifesto para um aplicativo? Este artigo me faz pensar que este é o caso . Ou tem outras implicações (por exemplo, talvez a verificação de manifestos seja comum o suficiente para desacelerar certos processos do sistema?)
  2. Existe claramente o risco de um manifesto mal configurado quebrar uma aplicação. Existem outros riscos, como problemas de segurança (manifestos de criação de malware?) Que um usuário final deve conhecer antes de ativá-los?
  3. Este artigo do MSDN parece estar dizendo que existem manifestos para permitir substituições de registro específicas do aplicativo. Essa é uma interpretação correta, em termos leigos?

Se a versão do Windows for relevante, estou mais interessado no Windows 8.1 e no Windows 7 (nessa ordem).

    
por user568458 23.04.2015 / 11:50

1 resposta

4

Os arquivos de manifesto contêm configurações para o Windows sobre como manipular o módulo na inicialização. Como você já descobriu, ele pode ser incorporado no próprio módulo ou ficar de fora como um arquivo * .manifest. Normalmente o embutido tem prioridade para que o externo não conte se o módulo já tiver um incorporado. A configuração do registro altera esse comportamento para contar os externos primeiro.

  1. Não acredito que a priorização dos manifestos externos diminua o desempenho do sistema. A maioria dos processos será executada normalmente após a verificação de que não há um externo. Mesmo se houver, os arquivos de manifesto são pequenos arquivos xml, para que não demorem muito para serem processados.

  2. Houve alguns casos como você disse. Exemplo: link Portanto, por questões de segurança, acho mais seguro não priorizar os manifestos externos, mesmo que não haja problemas contínuos no Windows.

  3. O artigo dizia que o mesmo objetivo foi alcançado com o Registro no passado. Agora é diferente porque os módulos podem ter manifestos internos. Além disso, os manifestos não podem ser usados como virtualização de registro genérica.

Na verdade, existe uma maneira de modificar o manifesto "interno". Este artigo ilustra como fazer isso por sua conta e risco. link

Eu testei esse truque com um aplicativo desenvolvido por mim e funcionou bem. Observe que você deve começar com "modo de desenvolvedor" para salvar o exe, remover o manifesto existente e, em seguida, adicionar novamente um novo manifesto. Para não mencionar, não esqueça de fazer o backup do original.

Se esse truque funcionar para você, isso será muito melhor do que mudar a prioridade. No entanto - aplicativos comerciais podem não funcionar, pois isso quebra as assinaturas digitais e pode causar conflitos nas proteções, se houver. Se não funcionar, o melhor caminho deve ser pedir ao desenvolvedor original para alterar os manifestos internos para versões mais recentes do Windows ou para encontrar versões mais recentes de software que possam ter corrigido o problema original.

    
por 12.05.2015 / 01:14