¿Cómo ejecuto una aplicación Metro desde la línea de comandos en Windows 8?

¿Cómo ejecuto una aplicación Metro desde la línea de comandos en Windows 8?

Estoy desarrollando un sistema de automatización y una de sus características es ejecutar aplicaciones desde la línea de comandos (quiero decir, automáticamente sin intervención humana).

En Windows 7 podría ejecutar todo lo que quisiera desde una llamada de línea de comandos, ¿hay alguna forma similar de hacer lo mismo con Windows 8 y también con las aplicaciones Metro instaladas?

Respuesta1

¡Sí! Encontre un camino...

Residencia enestecódigo fuente ("Abrir una aplicación Metro Style desde la aplicación de escritorio"), me di cuenta de que podía llamar a las aplicaciones metro tal como normalmente las ejecutamos manualmente. Quiero decir, si presionas Ctrl+ Escy vas a la pantalla de metro, puedes simplemente escribir el nombre de la aplicación de metro, como "tienda", por ejemplo, presionas Entery listo, la aplicación de metro se está ejecutando. En base a esto, creé un VBScript muy simple para realizar exactamente estos pasos automáticamente:

Establecer objShell = WScript.CreateObject("WScript.Shell")

objShell.SendKeys "^{ESC}"

WScript.Sueño 1000

objShell.SendKeys WScript.Arguments.Item(0)

WScript.Sueño 1000

objShell.SendKeys "{ENTRAR}"

Guarde esto como "metro.vbs" y llámelo desde la línea de comandos con el nombre de la aplicación metro en el primer argumento:

tienda metro.vbs

Así es, de forma muy sencilla y optimizada.

PD: Todos los créditos dados aAl-Khuzaei, el usuario del sitio Codeplex que creó el código relacionado. Gracias.

Respuesta2

La siguiente publicación de blog y el código de soporte le muestran cómo hacer esto con IApplicationActivationManager en PowerShell.

Obtenga una lista de aplicaciones metropolitanas e inícielas en Windows 8 usando PowerShell «Tome's Land of IT»

Afortunadamente, pude encontrar algo de código enDesbordamiento de pilaque mostró cómo usar esto en C# (la publicación también enumera la información de registro que describiré en este artículo). Después de algunos ajustes en el código y la sintaxis de Add-Type, pude exponer la función que necesitaba en PowerShell. Después de eso, sólo fue cuestión de envolver la función en algo que se pareciera a PowerShell.

El código se puede encontrar encódigo posh.

Respuesta3

Descubrí otra forma de hacerlo y escribí un artículo rápido sobre ello enhttp://www.itsjustwhatever.com/2012/10/28/launch-windows-8-metro-apps-from-a-desktop-shortcut-or-command-line/

La versión corta: crea un acceso directo que apunte a bingnews://. Puedes ver si hace lo que quieres. Si es así, hay más instrucciones para obtener los nombres en el sitio web.

Respuesta4

Encontré una manera de ejecutar aplicaciones universales de Windows que se descargaron a través de la Tienda Windows o están preinstaladas. Cada aplicación universal de Windows 8/10 tiene un AUMIDnombre que significa "ID de modelo de usuario de aplicación".

Potencia ShellComando para obtener todos los AUMID:

get-StartApps

Producción:

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
...

Ahora puedes iniciar cualquier aplicación universal a través de su AUMID de esta manera:

explorer shell:appsfolder\[AUMID]

Por ejemplo, si desea ejecutar Skype:

explorer shell:appsfolder\Microsoft.SkypeApp_kzf8qxf38zg5c!App

información relacionada