Tipo de arquivo e modelo de associações de URI
Plataformas
clientes do – Windows 8
Servers – Windows Server 2012
Descrição
O tipo de arquivo e o modelo de associação de URI foram alterados no Windows 8. Os aplicativos não são mais capazes de se definir programaticamente como o manipulador padrão para um tipo de arquivo ou URI. Em vez disso, agora o usuário sempre controla o que é o manipulador padrão para um tipo de arquivo ou esquema de URI.
Manifestação
A forma como essa alteração é apresentada ao usuário depende de como o aplicativo foi projetado, por exemplo:
- Muitos aplicativos verificam se eles são o padrão toda vez que são executados e, se não forem, solicitam que o usuário os defina como padrão. No entanto, como os aplicativos não podem mais consultar com precisão para determinar qual aplicativo é o manipulador padrão para um tipo de arquivo ou esquema de URI, nenhuma dessas operações funciona.
- Muitos aplicativos têm uma caixa de diálogo ou menu interno ou em seu instalador que especifica os tipos de arquivo para os quais o aplicativo deve servir como o padrão. No entanto, como os aplicativos não podem mais se definir programaticamente como o manipulador padrão para um tipo de arquivo ou esquema de URI, isso não funciona mais.
Mitigação
Há várias coisas que os usuários podem fazer para acomodar essas alterações:
- Os usuários são solicitados contextualmente a escolher um aplicativo padrão para lidar com tipos de arquivo, esquemas de URI ou ambos quando um não foi especificado
- Os usuários recebem a opção de alterar seu manipulador padrão depois de instalar novos aplicativos que podem lidar com um tipo de arquivo ou esquema de URI
- O painel de controle de programas padrão permite que os usuários definam padrões para um aplicativo ou para um tipo de arquivo, esquema de URI ou ambos; os aplicativos podem vincular ao painel de controle
- Os padrões podem ser alterados do Windows Explorer
Solução
Como resultado dessas alterações, esta orientação de API é fornecida:
A funcionalidade de algumas chamadas de método no IApplicationAssociationRegistration API foi alterada e não deve mais ser usada.
- Não chamada QueryAppIsDefault/QueryAppIsDefaultAll para determinar se um aplicativo é o padrão
- Não chamada QueryCurrentDefault para determinar qual aplicativo (se houver) é o padrão atual
- Não chamada SetAppIsDefault/SetAppIsDefaultAll para definir o aplicativo padrão
A orientação daqui para frente é:
Não consulta para ver qual aplicativo é o manipulador padrão para tipos de arquivo ou esquemas de URI
Não tentativa de monitorar alterações no manipulador padrão para tipos de arquivo ou esquemas de URI
Não tentativa de definir um aplicativo como o manipulador padrão para tipos de arquivo ou esquemas de URI
Não tentativa de gerenciar padrões para tipos de arquivo ou esquemas de URI de dentro de um aplicativo
Fazer integrar ao painel de controle Definir Programas Padrão se você quiser permitir que os usuários do seu aplicativo acessem a interface do usuário de gerenciamento padrão (a interface do usuário de gerenciamento dentro do aplicativo não tem mais suporte)
- Chamar IApplicationAssociationRegistrationUI::LaunchAdvancedAssociationUI permite que o usuário acesse a página do painel de controle 'Definir Programas Padrão' para o aplicativo especificado
Testes
- Teste para verificar se os aplicativos se registram corretamente no painel de controle Definir Programas Padrão
- Teste para verificar se os aplicativos se registram corretamente para aparecer na lista OpenWith para os tipos de arquivo, esquemas de URI ou ambos, que eles se registram para manipular
- Teste para verificar se novas notificações de aplicativo são exibidas após a instalação do aplicativo e o usuário invoca um tipo de arquivo, um esquema de URI ou ambos, que seu aplicativo registrou para manipular
Recursos
- práticas recomendadas para associações de tipo de arquivo e URI em aplicativos da área de trabalho do Windows 8
- de apresentação de conferência de compilação de compilação de reprodução automática e associações de tipo de arquivo