【问题标题】:How do I launch a Windows Store application programmatically?如何以编程方式启动 Windows 应用商店应用程序?
【发布时间】:2013-07-30 11:07:50
【问题描述】:

我刚刚构建了 Visual Studio 2012 提供的项目模板之一(“Split App (XAML)”模板可通过“模板”->“其他语言”->“Visual C#”->“新项目”对话框中的 Windows 应用商店访问)。

我可以从 Visual Studio 2012 执行应用程序,也可以从 Windows 8 开始屏幕启动它 - 但如果我尝试直接启动生成的可执行文件(例如,通过 Windows 资源管理器或从命令外壳),一个完整的- 屏幕错误消息显示“此应用无法在您的 PC 上运行”。

通过 Process Explorer 查看应用程序的运行实例表明它 a) 只是链接到 .NET 运行时 MSCOREE.DLL 并且 b) 它被这样的命令行调用:

"[..] \bin\Debug\AppX\WindowsStoreSample.exe" -ServerName:App.AppXgsxd2athqtr03f55we0938hcn632we3k.mca

我的实际问题是:以编程方式启动此类应用程序的正确方法是什么?我会使用普通的CreateProcess,然后尝试组装一个如上所示的命令行吗?如果是这样,我如何确定正确的 -ServerName 参数?还是有其他方法可以启动此类应用程序?

【问题讨论】:

  • 如果有人知道 Windows 8 引入的这些“全屏”应用程序的正确术语,请告诉我,以便我可以相应地更新问题的标题。
  • 你是说 Metro 应用?
  • @AdamTester:我想是的,是的。全屏运行并使用新的平铺 GUI。
  • 是的,它们是 Metro 应用程序
  • 它们不被称为 Metro 应用程序。

标签: c++ xaml windows-8 windows-store-apps


【解决方案1】:

启动 Windows 应用商店应用的正确方法是使用IApplicationActivationManager 接口。这也是 Visual Studio 本身用于启动应用程序的方法。接口上的所有方法都有一个DWORD out 参数,用于获取新启动进程的PID。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-29
    • 2014-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-05
    相关资源
    最近更新 更多