Как запустить Metro-приложение из PowerShell в Windows 8?

В связи с другим вопросом в Superuser, я пытаюсь запустить приложение на основе Metro из командной строки. Согласно комментарию к моему вопросу суперпользователя, я мог бы найти ответ на команду PowerShell или script. Я уже пробовал, но нашел что-нибудь в любой интернет-ссылке о PowerShell и Windows 8...

Итак, есть какой-то определенный способ/команда для вызова и запуска приложения Metro-стиля из команды PowerShell в Windows 8?

Ответ 1

Нет прямого способа сделать это, но есть несколько косвенных способов.

vsdebuglaunchnotify, который поставляется с Visual Studio, можно вызвать из PowerShell.

Вы можете создать свой собственный exe, который использует IApplicationActivationManager.

Если приложение связано с любыми типами файлов, вы можете запустить связанный файл.

Более подробная информация содержится в этом потоке в MSDN:

http://social.msdn.microsoft.com/Forums/en-US/windowsgeneraldevelopmentissues/thread/8d1b0861-5903-4289-8cb8-541ddaa012fb

Ответ 2

Здесь сообщение в блоге Powertoe, использующее способ IApplicationActivationManager:

http://powertoe.wordpress.com/2012/11/02/get-a-list-of-metro-apps-and-launch-them-in-windows-8-using-powershell/

Он предоставляет код здесь http://poshcode.org/3740, который предоставляет командный файл Start-MetroApp для powershell.

В качестве альтернативы: я думаю, что в некоторых приложениях Metro есть обработчики протоколов, поэтому вы можете разговаривать с ними через URI (например, "appname: dosomething" ), но я не уверен, насколько широко это используется.