繁体   English   中英

使用C#在Windows 10中列出并启动Metro应用

[英]List and launch metro apps in Windows 10 with C#

我需要列出Windows 10系统中已安装的Metro应用程序。 从列表开始,我想启动任何已安装的应用程序。 唯一的要求是,我不必使用PackageManager类。

我刚刚从PowerShell http://poshcode.org/3740中的此启发性代码开始解决了Win 8中的问题,现在我想在Windows 10中做同样的事情,但是在我看来,都市应用程序的注册表映射具有自8 / 8.1起发生了很大变化。

不知道这是否对您有帮助,但是我在Windows 10中发现了一个可能有用的本地Powershell命令。

获取AppxPackage

例如,要获取应用程序名称列表:

> Get-AppxPackage | Select Name

Name
----
Microsoft.AAD.BrokerPlugin
Microsoft.Windows.CloudExperienceHost
Microsoft.AccountsControl
Microsoft.BioEnrollment
Microsoft.LockApp
Microsoft.MicrosoftEdge
Microsoft.Windows.AssignedAccessLockApp
Microsoft.Windows.ContentDeliveryManager
Microsoft.Windows.ParentalControls
Microsoft.Windows.ShellExperienceHost
Microsoft.XboxGameCallableUI
Microsoft.XboxIdentityProvider
Windows.ContactSupport
windows.immersivecontrolpanel
Windows.MiracastView
Windows.PrintDialog
Windows.PurchaseDialog
windows.devicesflow
Microsoft.VCLibs.140.00
Microsoft.VCLibs.140.00
Microsoft.Windows.Cortana
Microsoft.WindowsFeedback
Microsoft.NET.Native.Runtime.1.1
Microsoft.NET.Native.Runtime.1.1
Microsoft.VCLibs.120.00.Universal
4DF9E0F8.Netflix
Microsoft.VCLibs.120.00.Universal
Microsoft.WindowsCalculator
Microsoft.Appconnector
Microsoft.WindowsStore
Microsoft.NET.Native.Runtime.1.0
Microsoft.VCLibs.120.00
Microsoft.Media.PlayReadyClient.2

我个人仅安装了一个第3方Metro应用程序Netflix,甚至还卸载了一些默认的Microsoft应用程序。

如果要从此查询中排除Microsoft和Windows应用程序:

> Get-AppxPackage | ? {$_.Name -notlike "Microsoft*" -AND $_.Name -notlike "Windows*"}| Select Name

Name
----
4DF9E0F8.Netflix

我还没有找到一种从中启动应用程序的方法,但是我确信这是朝着正确方向迈出的一步。 ;)

编辑:

好的,事实证明这很简单,但是却很难发现...

Start Shell:AppsFolder\4DF9E0F8.Netflix_mcm4njqhnhss8!App

可以从以下内容检索此AppID,据我所知,该内容列出了开始菜单中的所有内容。

Get-StartApps

通过将“!App”附加到PackageFamilyName属性的末尾,也可以从Get-AppxPackages cmdlet检索它。

Get-AppxPackage | % { $_.PackageFamilyName + "!App" }

我发现它可以与某些(但不是全部)一起使用。 例如,它与Netflix,Calculator和Store合作。 但是Microsoft Edge是“!MicrosoftEdge”而不是“!App”。 因此,除非您可以从其他地方识别或检索后缀,否则我不会说这是一种可靠的方法,这就是为什么我发现Get-StartApps对我更好。 (我个人只是在寻找一种通过脚本/快捷方式启动Netflix的方法...)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM