Wie führe ich eine Metro-Anwendung über die Befehlszeile in Windows 8 aus?

Wie führe ich eine Metro-Anwendung über die Befehlszeile in Windows 8 aus?

Ich entwickle ein Automatisierungssystem und eine seiner Funktionen besteht darin, Anwendungen über die Befehlszeile auszuführen (ich meine, automatisch ohne menschliches Eingreifen).

Unter Windows 7 kann ich alles, was ich will, über einen Befehlszeilenaufruf ausführen. Gibt es eine ähnliche Möglichkeit, dasselbe unter Windows 8 zu tun, wenn auch die Metro-Apps darauf installiert sind?

Antwort1

Ja! Ich habe einen Weg gefunden ...

Bezogen aufDasQuellcode („Öffnen Sie eine Metro Style App von der Desktop-App aus“), wurde mir klar, dass ich die Metro-Apps genauso aufrufen konnte, wie wir sie normalerweise manuell ausführen. Ich meine, wenn Sie Ctrl+ drücken Escund zum Metro-Bildschirm gehen, können Sie einfach den Namen der Metro-App eingeben, z. B. „Store“, drücken Enterund das war‘s, die Metro-App wird ausgeführt. Darauf basierend habe ich ein sehr einfaches VBScript erstellt, um genau diese Schritte automatisch auszuführen:

Setzen Sie objShell = WScript.CreateObject("WScript.Shell")

objShell.SendKeys "^{ESC}"

WScript.Schlaf 1000

objShell.SendKeys WScript.Arguments.Item(0)

WScript.Schlaf 1000

objShell.SendKeys "{ENTER}"

Speichern Sie dies als „metro.vbs“ und rufen Sie es von der Befehlszeile mit dem Namen der Metro-App als erstem Argument auf:

metro.vbs-Speicher

Das ist alles, eine sehr einfache und optimierte Methode.

PS: Alle Credits gehen anAl-Khuzaei, der Codeplex-Site-Benutzer, der den zugehörigen Code erstellt hat. Vielen Dank.

Antwort2

Der folgende Blogbeitrag und der unterstützende Code zeigen Ihnen, wie Sie dies mit IApplicationActivationManager in PowerShell tun.

Holen Sie sich eine Liste von Metro-Apps und starten Sie sie in Windows 8 mit PowerShell « Tome's Land of IT

Glücklicherweise konnte ich Code finden aufPaketüberflussdas zeigte, wie man dies in C# verwendet (der Beitrag enthielt auch die Registrierungsinformationen, die ich in diesem Artikel beschreiben werde). Nach einigen Anpassungen des Codes und der Add-Type-Syntax konnte ich die benötigte Funktion in PowerShell verfügbar machen. Danach musste ich die Funktion nur noch in etwas verpacken, das PowerShell ähnelt.

Den Code finden Sie aufposhcode.

Antwort3

Ich habe gerade eine andere Möglichkeit gefunden, dies zu tun, und einen kurzen Artikel darüber geschrieben unterhttp://www.itsjustwhatever.com/2012/10/28/launch-windows-8-metro-apps-from-a-desktop-shortcut-or-command-line/

Die Kurzversion: Erstellen Sie eine Verknüpfung, die auf bingnews:// verweist. Sie können sehen, ob das funktioniert. Wenn ja, gibt es weitere Anweisungen, um die Namen auf der Website abzurufen.

Antwort4

Ich habe eine Möglichkeit gefunden, Windows Universal-Apps auszuführen, die über den Windows Store heruntergeladen oder vorinstalliert wurden. Jede Windows 8/10 Universal-App hat ein , AUMIDdas für „Application User Model ID“ steht.

Power ShellBefehl zum Abrufen aller AUMID:

get-StartApps

Ausgabe:

PS C:\> get-StartApps

Name                      AppID
----                      -----
Skype                     Microsoft.SkypeApp_kzf8qxf38zg5c!App
Snip & Sketch             Microsoft.ScreenSketch_8wekyb3d8bbwe!App
Mail                      microsoft.windowscommunicationsapps_8wekyb3d8bbwe!microsoft.w...
Calendar                  microsoft.windowscommunicationsapps_8wekyb3d8bbwe!microsoft.w...
Movies & TV               Microsoft.ZuneVideo_8wekyb3d8bbwe!Microsoft.ZuneVideo
Photos                    Microsoft.Windows.Photos_8wekyb3d8bbwe!App
Video Editor              Microsoft.Windows.Photos_8wekyb3d8bbwe!SecondaryEntry
Maps                      Microsoft.WindowsMaps_8wekyb3d8bbwe!App
Alarms & Clock            Microsoft.WindowsAlarms_8wekyb3d8bbwe!App
Voice Recorder            Microsoft.WindowsSoundRecorder_8wekyb3d8bbwe!App
Camera                    Microsoft.WindowsCamera_8wekyb3d8bbwe!App
Microsoft Store           Microsoft.WindowsStore_8wekyb3d8bbwe!App
Weather                   Microsoft.BingWeather_8wekyb3d8bbwe!App
Cortana                   Microsoft.549981C3F5F10_8wekyb3d8bbwe!App
Instagram                 Facebook.InstagramBeta_8xx8rvfyw5nnt!Instagram
...

Sie können jetzt also jede universelle App über ihre AUMID wie folgt starten:

explorer shell:appsfolder\[AUMID]

Wenn Sie beispielsweise Folgendes ausführen möchten Skype:

explorer shell:appsfolder\Microsoft.SkypeApp_kzf8qxf38zg5c!App

verwandte Informationen