É possível executar o aplicativo do Windows a partir de outro programa ou linha de comando sem alterar as configurações da pasta WindowsApps?

É possível executar o aplicativo do Windows a partir de outro programa ou linha de comando sem alterar as configurações da pasta WindowsApps?

Eu tenho um script nodeJS que é executado no arquivo SVG do Inkscape e exporta certas camadas usando este comando:

  inkscape.exe "myfile.svg" -i ${id} -j -C --export-png="${outPath}"

No entanto, no meu novo sistema, instalei o inkscape através da Windows Store e agora o executável está em algum lugar no C:\ProgramFiles\WindowsApps, que não está acessível. Eu poderia alterar as permissões, mas suponho que a pasta esteja bloqueada por um bom motivo.

Existe uma maneira de executar o aplicativo Windows sem acessar essa pasta? Gostaria de uma solução que funcionasse para a maioria dos aplicativos, não apenas para o Inkscape.

Responder1

Observação:

Para efeitos de criação desta resposta, em vez de usarInkscape, usei o aplicativo UWPCalculadora do Windows.

No entanto, no meu novo sistema, instalei o Inkscape através da Windows Store e agora o executável está em algum lugar em C:\ProgramFiles\WindowsApps, que não está acessível. Eu poderia alterar as permissões, mas suponho que a pasta esteja bloqueada por um bom motivo.

Se você alterar as permissões em WindowsApps para algo diferente do padrão, os resultados serão indefinidos e os aplicativos UWP deixarão de funcionar.

Existe uma maneira de executar o aplicativo Windows sem acessar essa pasta?

Na verdade, é possível executar um aplicativo UWP no prompt de comando.

  1. Execute o seguinte comando do PowerShell

    get-appxpackage > Resultado.txt

  2. Navegue %UserProfile%e abraResultado.txt

  3. Determinar oLocal de instalaçãopara Windows Calculator.
  4. Determinar oPacoteFamilyNamepara Windows Calculator.
  5. Navegue até InstallLocation com o File Explorer.
  6. Abra AppManifest.xml com o Bloco de Notas
  7. Determinar oID do aplicativopara calculadora do Windows. Eu normalmente procuro oExecutáveldo aplicativo UWP que estou tentando iniciar.
    • Há casos em que existirão vários pacotes UWP na mesma pasta. Isso significa que AppManifest.xmlirá lidar com vários executáveis.
  8. Em um prompt de comando, digite o seguinte:

    shell explorer.exe:appsFolder\Microsoft.WindowsCalculator_8wekyb3d8bbwe!App

  9. Se você encontrou o corretoID do aplicativopara o aplicativo, a Calculadora do Windows será iniciada.

O local de instalação dos aplicativos UWP não é estático; à medida que novas versões são lançadas, seu local muda. Então, seguindo este guia, determinei que o atualPacoteFamilyNameda Calculadora do Windows era Microsoft.WindowsCalculator_8wekyb3d8bbwee oID de instalaçãoeraAPP

Isso funcionará para qualquer aplicativo UWP, então repeti o processo para o Windows Live Calendar e executei, explorer.exe shell:appsFolder\microsoft.windowscommunicationsapps_8wekyb3d8bbwe!microsoft.windowslive.calendaro que resultou na inicialização do Windows Calendar.

Responder2

Embora a resposta de @Ramhound seja bastante completa, a parte de descobrir o aplicativo UWP instalado na Loja pode ser melhorada:

  1. Na caixa de diálogo Executar do Windows ( Win+ R), execute shell:AppsFolder
  2. Encontre o aplicativo em questão na pasta
  3. Clique com o botão direito e escolha "Criar atalho"
  4. Diga "Sim" para "colocar o atalho na área de trabalho"
  5. Clique com o botão direito no atalho e escolha "Propriedades"
  6. A entrada no campo "Destino" é o ID que você precisa.
  7. Copie o ID (se puder)
  8. O aplicativo agora pode ser invocado por:

     explorer.exe shell:appsFolder\app-id
    

Se você não consegue copiar o campo "Target" e não tem nenhum produto que possa retirá-lo (useiCapture2Text), você pode usar o procedimento de Ramhound ou aquele do artigo Iniciando o Windows 10 "Store App" a partir da linha de comando.

informação relacionada