我刚刚构建了 Visual Studio 2012 提供的项目模板之一(可通过“新建项目”对话框中的模板 -> 其他语言 -> Visual C# -> Windows Store 访问“拆分应用程序 (XAML)”模板)。
我可以从 Visual Studio 2012 执行该应用程序,并且可以从 Windows 8 开始屏幕启动它 - 但如果我尝试直接启动生成的可执行文件(例如通过 Windows 资源管理器或从命令 shell),则完整的- 打印屏幕错误消息“此应用程序无法在您的电脑上运行”。
通过 Process Explorer 查看应用程序的运行实例表明,它 a) 仅链接到 .NET 运行时 MSCOREE.DLL,b) 它通过如下命令行调用:
"[..] \bin\Debug\AppX\WindowsStoreSample.exe" -ServerName:App.AppXgsxd2athqtr03f55we0938hcn632we3k.mca
我的实际问题是:以编程方式启动此类应用程序的正确方法是什么?我会使用普通的 CreateProcess 然后尝试组装如上所示的命令行吗?如果是这样,我如何确定正确的 -ServerName
参数?或者还有其他方法来启动此类应用程序吗?
最佳答案
启动 Windows 应用商店应用程序的正确方法是使用 IApplicationActivationManager
界面。这也是 Visual Studio 本身用于启动应用程序的方式。接口(interface)上的所有方法都有一个 DWORD
输出参数,它可以获取新启动进程的 PID。
关于c++ - 如何以编程方式启动 Windows 应用商店应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17944718/