【问题标题】:Is there a possibility to start another App or Program from a Windows 8 Store App (C#)是否有可能从 Windows 8 商店应用程序 (C#) 启动另一个应用程序或程序
【发布时间】:2013-07-31 11:25:45
【问题描述】:

我想从我的 Windows 应用商店应用启动另一个应用或程序。例如,我的应用程序正在显示电子邮件,因此如果有人点击此类电子邮件,Outlook 应该会打开。这在“App-Sandbox”中可行吗?

【问题讨论】:

  • “这在“App-Sandbox”中可行吗? - 希望不会。
  • 你有什么尝试吗?你努力的一些代码示例会很好。请阅读help center
  • @Gusdor Launcher 类在我的情况下不起作用。
  • @SonerGönül 尝试了 Launcher 类,但没有成功。还尝试将 *.lnk 文件保存在我的应用程序目录中(我的应用程序具有完全访问权限)并启动此文件。也不成功

标签: c# windows-8 windows-runtime windows-store-apps winrt-xaml


【解决方案1】:

不可能只启动任意应用程序,但通过自定义协议激活,您可以启动处理该协议的应用程序,如果未安装 - 操作系统会要求用户安装它。这意味着如果您可以在您的应用程序中定义自定义协议 - 您可以使用此协议从另一个应用程序启动它,假设没有其他应用程序注册来处理它。任何 XBOX Live 应用程序就是一个例子——如果你检查它们的清单文件——它们都处理自定义协议。

如果您的具体问题是关于按名称或位置启动特定应用程序,那么不,这是不可能的,但如果您知道要启动的应用程序处理的协议 - 您可以尝试使用它 - 请记住可能有其他应用程序处理该协议。

【讨论】:

  • 好的。感谢您提供详细的答案。我必须研究自定义协议的方式。可能没有其他应用程序可以处理该协议,因为它是一个企业环境;)
【解决方案2】:

简短回答:不,不可能。

您可以使用关联的应用程序打开文件,但不能生成任意外部进程。

正如@mitch-wheat 指出的那样,这就是它被称为沙箱的原因。

【讨论】:

  • 不会让我自信,但我认为我必须接受这个事实。谢谢。
【解决方案3】:

看看这个sample

该示例适用于 Windows 8.1,但我认为也适用于 Windows 8。

【讨论】:

  • 谢谢,但我认为存在误解。我没有要打开的文件。好的,如果我有一封电子邮件,那里有一个文件,但我的问题的含义有点不同。我想打开 word、calc 或 excel f.e.如果我在我的应用程序中单击一个按钮,没有文件解决方法
猜你喜欢
  • 1970-01-01
  • 2011-10-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多