启动Windows 10存储应用程序

时间:2015-08-18 13:53:03

标签: c# windows-10

我正在寻找一种从C#在Windows 10 / 8.1上启动/运行Windows应用商店应用的方法。

我尝试运行的应用程序的示例是

  1. 计算器
  2. 照片
  3. 设置
  4. 注意:在Windows 10中,这些不再是标准的.exe文件,可以通过双击或调用Process.Start()来执行,因为它们现在是Windows应用商店。

    我曾尝试使用IApplicationActivationManager,但我找不到合适的文档,并提供了如何使用它的示例。

2 个答案:

答案 0 :(得分:5)

有几种方法可以做到这一点。最简单的方法是使用Process.Start和URL或文件处理程序。

例如,这将打开视频应用程序:

Process.Start("microsoftvideo://");

或更新页面上的商店:

Process.Start("ms-windows-store:updates");

或照片应用:

Process.Start("ms-photos://");

还有几个句柄,其中一些可以找到here。您可以在打开注册表项HKEY_CLASSES_ROOT\Extensions\ContractId\Windows.Protocol\PackageId时找到这些名称。查找CustomProperties密钥。它有一个属性Name。那是一个可以使用的。

可以在SU上找到一些其他有用的指针:How do I run a Metro-Application from the command-line in Windows 8?

答案 1 :(得分:0)

我找到了一种很酷的方式来运行通过 Windows 应用商店下载或预安装的每个 Windows 通用应用程序。 每个 Windows 10 通用应用都有一个 AUMID,代表“应用程序用户模型 ID”。

PowerShell 获取所有 AUMID 的命令:

get-StartApps

输出:

<块引用>
PS C:\> get-StartApps

Name                      AppID
----                      -----
Skype                     Microsoft.SkypeApp_kzf8qxf38zg5c!App
Snip & Sketch             Microsoft.ScreenSketch_8wekyb3d8bbwe!App
Mail                      microsoft.windowscommunicationsapps_8wekyb3d8bbwe!microsoft.w...
Calendar                  microsoft.windowscommunicationsapps_8wekyb3d8bbwe!microsoft.w...
Movies & TV               Microsoft.ZuneVideo_8wekyb3d8bbwe!Microsoft.ZuneVideo
OneNote for Windows 10    Microsoft.Office.OneNote_8wekyb3d8bbwe!microsoft.onenoteim
Photos                    Microsoft.Windows.Photos_8wekyb3d8bbwe!App
Video Editor              Microsoft.Windows.Photos_8wekyb3d8bbwe!SecondaryEntry
Maps                      Microsoft.WindowsMaps_8wekyb3d8bbwe!App
Alarms & Clock            Microsoft.WindowsAlarms_8wekyb3d8bbwe!App
Voice Recorder            Microsoft.WindowsSoundRecorder_8wekyb3d8bbwe!App
Feedback Hub              Microsoft.WindowsFeedbackHub_8wekyb3d8bbwe!App
Xbox Game Bar             Microsoft.XboxGamingOverlay_8wekyb3d8bbwe!App
Camera                    Microsoft.WindowsCamera_8wekyb3d8bbwe!App
Microsoft Store           Microsoft.WindowsStore_8wekyb3d8bbwe!App
Weather                   Microsoft.BingWeather_8wekyb3d8bbwe!App
Cortana                   Microsoft.549981C3F5F10_8wekyb3d8bbwe!App
Instagram                 Facebook.InstagramBeta_8xx8rvfyw5nnt!Instagram
...

现在,您可以通过其 AUMID 启动任何通用应用,如下所示:

explorer shell:appsfolder\[AUMID]

例如,如果您要执行Skype

explorer shell:appsfolder\Microsoft.SkypeApp_kzf8qxf38zg5c!App

现在是回到 Csharp 的时候了:

Process.Start("explorer shell:appsfolder\Microsoft.BingWeather_8wekyb3d8bbwe!App");

Windows Weather 应用将执行。