Emparelhamento de um driver com um aplicativo UWP (Plataforma Universal do Windows)
A partir do Windows 10 versão 1709, você pode especificar que um aplicativo de Plataforma Universal do Windows (UWP) só deve ser carregado se um driver específico estiver presente. Quando você usa essa opção, a Microsoft Store oferece a cada usuário a versão mais recente do aplicativo que funciona com a versão instalada do driver no computador desse usuário.
O aplicativo pode restringir ainda mais o carregamento a uma determinada versão ou data do driver. Este tópico descreve as etapas necessárias no aplicativo e no driver para criar esse requisito.
Observação
O aplicativo e o driver devem declarar a dependência no aplicativo (HSA).
Etapas no aplicativo
Para fazer com que um aplicativo UWP seja carregado somente quando um driver específico estiver presente, adicione dois elementos XML ao arquivo XML de manifesto (.appx) para o aplicativo:
Em particular, use esses elementos para especificar pelo menos uma dependência de driver contendo pelo menos uma restrição de driver. Veja mais detalhes sobre o uso desses elementos nas páginas de referência vinculadas acima, incluindo Exemplos.
Observação
Compilações de depuração em versões anteriores do Visual Studio podem colocar os <PackageDependency>
elementos para dependências de depuração após <uap5:DriverDependency>
, resultando na falha na validação do manifesto em relação ao esquema.
Para corrigir o problema, atualize o Visual Studio para a versão 16.11.5 ou mais recente.
Etapas no driver
Em seguida, faça o seguinte no arquivo INF do driver:
- Especifique a diretiva InF AddSoftware.
- Defina a entrada SoftwareType como 2.
- Forneça um PFN (Nome da Família de Pacotes) na entrada SoftwareID .
Além de corresponder às versões mais recentes do aplicativo e do driver, o sistema também tenta corresponder às versões anteriores do aplicativo e do driver. Por exemplo, se a versão 2 do aplicativo especificar o driver mínimo versão 2 e o aplicativo versão 1 especificar o driver mínimo versão 1, um sistema que tenha o driver versão 1 carregará com êxito o aplicativo versão 1.