Не уверен, что это вам поможет, но я нашел команду родной powershell в Windows 10, которая может пригодиться.
Get-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
лично я только иметь установлен один третье приложение метро партии, Netflix, и я даже удалил некоторые значения по умолчанию Приложения Microsoft.
Если вы хотите, чтобы исключить приложения Microsoft и Windows, из этого запроса:
> Get-AppxPackage | ? {$_.Name -notlike "Microsoft*" -AND $_.Name -notlike "Windows*"}| Select Name
Name
----
4DF9E0F8.Netflix
Я еще предстоит найти способ запуска приложений из этого, но я уверен, что это шаг в правильное направление. ;)
Edit:
Хорошо, это оказалось так просто, и все же удивительно трудно узнать ...
Start Shell:AppsFolder\4DF9E0F8.Netflix_mcm4njqhnhss8!App
Это AppID могут быть получены из следующих, который, насколько я могу судить, перечисляет все в стартовом меню.
Get-StartApps
Он также может быть в состоянии извлечь из командлета Get-AppxPackages путем добавления «! App» на конец имущества PackageFamilyName.
Get-AppxPackage | % { $_.PackageFamilyName + "!App" }
Я нашел это для работы с некоторыми, но не для всех. Он работал с Netflix, Calculator, Store, например. Но Microsoft Edge была «! MicrosoftEdge», а не «! App». Поэтому я бы не сказал, что это надежный метод, если вы не можете определить или получить суффикс из другого места, поэтому я нашел Get-StartApps лучшим для меня. (Я лично искал способ запуска Netflix с помощью скрипта/ярлыка ...)
К сожалению, вопрос требует решения C#. Я попытался получить исходный код вовлеченных сборок вашего решения PowerShell, но в итоге нашел c: \ Windows \ System32 \ Windows.ApplicationModel.dll, который не является управляемой библиотекой. – epikarma