如何在Windows 8上从PowerShell运行Metro-App?

有关超级用户的另一个问题 ,我试图从命令行运行一个基于Metro的应用程序。 根据对我的超级用户问题的评论,我可能会在PowerShell命令或脚本上find一个答案。 我已经尝试,但发现任何有关PowerShell和Windows 8的互联网参考…

那么,有什么特定的方法/命令可以在Windows 8上通过PowerShell命令调用并运行Metro风格的应用程序?

没有直接的方法来做到这一点,但有一些间接的方法。

Visual Studio附带的vsdebuglaunchnotify可以从PowerShell中调用。

你可以创建你自己的使用IApplicationActivationManager的exe 文件

如果应用程序与任何文件类型关联,则可以启动关联的文件。

MSDN上的此主题中包含更多信息:

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

这里是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 ,它提供了一个用于PowerShell的Start-MetroApp命令行开关。

或者,我认为一些Metro应用程序有协议处理程序,所以你可以通过URI(例如“appname:dosomething”)与他们交谈,但我不确定这是多么广泛的使用。