Ist es möglich, eine Windows-App von einem anderen Programm oder einer Befehlszeile aus auszuführen, ohne die Einstellungen des WindowsApps-Ordners zu ändern?

Ist es möglich, eine Windows-App von einem anderen Programm oder einer Befehlszeile aus auszuführen, ohne die Einstellungen des WindowsApps-Ordners zu ändern?

Ich habe ein NodeJS-Skript, das die Inkscape-SVG-Datei durchläuft und mit diesem Befehl bestimmte Ebenen exportiert:

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

Auf meinem neuen System habe ich Inkscape jedoch über den Windows Store installiert und jetzt befindet sich die ausführbare Datei irgendwo in C:\ProgramFiles\WindowsApps, auf die nicht zugegriffen werden kann. Ich könnte die Berechtigungen ändern, aber ich nehme an, der Ordner ist aus gutem Grund gesperrt.

Gibt es eine Möglichkeit, Windows-Apps auszuführen, ohne auf diesen Ordner zuzugreifen? Ich hätte gerne eine Lösung, die für die meisten Apps funktioniert, nicht nur für Inkscape.

Antwort1

Notiz:

Für die Erstellung dieser Antwort verwenden Sie nichtInkscape, ich habe die UWP-Anwendung verwendetWindows-Rechner.

Auf meinem neuen System habe ich Inkscape jedoch über den Windows Store installiert und jetzt befindet sich die ausführbare Datei irgendwo in C:\ProgramFiles\WindowsApps, auf das nicht zugegriffen werden kann. Ich könnte die Berechtigungen ändern, aber ich nehme an, der Ordner ist aus gutem Grund gesperrt.

Wenn Sie die Berechtigungen für WindowsApps auf einen anderen Wert als den Standardwert ändern, sind die Ergebnisse undefiniert und UWP-Anwendungen funktionieren nicht mehr.

Gibt es eine Möglichkeit, Windows-Apps auszuführen, ohne auf diesen Ordner zuzugreifen?

Es ist tatsächlich möglich, eine UWP-Anwendung über die Eingabeaufforderung auszuführen.

  1. Führen Sie den folgenden PowerShell-Befehl aus

    get-appxpackage > Ergebnis.txt

  2. Navigieren Sie zu %UserProfile%und öffnen SieErgebnis.txt

  3. Bestimmen Sie dieInstallationsortfür Windows Calculator.
  4. Bestimmen Sie diePaketFamiliennamefür Windows Calculator.
  5. Navigieren Sie mit dem Datei-Explorer zum Installationsort.
  6. Öffnen Sie AppManifest.xml mit Notepad
  7. Bestimmen Sie dieAnwendungs-IDfür Windows-Rechner. Normalerweise suche ich nachAusführbarder UWP-Anwendung, die ich starten möchte.
    • Es gibt Fälle, in denen mehrere UWP-Pakete im selben Ordner vorhanden sind. Dies bedeutet, dass AppManifest.xmlmehrere ausführbare Dateien verarbeitet werden.
  8. Geben Sie in einer Eingabeaufforderung Folgendes ein:

    explorer.exe-Shell:appsFolder\Microsoft.WindowsCalculator_8wekyb3d8bbwe!App

  9. Wenn Sie die richtigeAnwendungs-IDfür die Anwendung, dann wird der Windows-Rechner gestartet.

Der Installationsort für UWP-Anwendungen ist nicht statisch, da neue Versionen veröffentlicht werden und sich ihr Speicherort ändert. Durch Befolgen dieser Anleitung habe ich festgestellt, dass der aktuellePaketFamiliennamevon Windows-Rechner war Microsoft.WindowsCalculator_8wekyb3d8bbweund dieInstallations-IDWarAPP

Dies funktioniert für jede UWP-Anwendung, daher habe ich den Vorgang für den Windows Live-Kalender wiederholt und ausgeführt, explorer.exe shell:appsFolder\microsoft.windowscommunicationsapps_8wekyb3d8bbwe!microsoft.windowslive.calendarwodurch der Windows-Kalender gestartet wurde.

Antwort2

Während die Antwort von @Ramhound ziemlich vollständig ist, kann der Teil zum Erkennen der im Store installierten UWP-Anwendung verbessert werden:

  1. Führen Sie im Windows-Dialogfeld „Ausführen“ ( Win+ R) Folgendes aus: shell:AppsFolder
  2. Suchen Sie die betreffende Anwendung im Ordner
  3. Klicken Sie mit der rechten Maustaste und wählen Sie „Verknüpfung erstellen“
  4. Sagen Sie „Ja“, um die Verknüpfung auf dem Desktop zu platzieren.
  5. Klicken Sie mit der rechten Maustaste auf die Verknüpfung und wählen Sie „Eigenschaften“
  6. Der Eintrag im Feld „Ziel“ ist die ID, die Sie benötigen.
  7. Kopieren Sie die ID (falls möglich)
  8. Die App kann jetzt wie folgt aufgerufen werden:

     explorer.exe shell:appsFolder\app-id
    

Wenn Sie das Feld "Ziel" nicht kopieren können und kein Produkt haben, das es abholen kann (ich habeCapture2Text), können Sie entweder das Verfahren von Ramhound oder das im Artikel beschriebene verwenden. Starten der Windows 10 „Store App“ über die Kommandozeile.

verwandte Informationen