我们如何提取启动 UWP 应用程序的信息?
Posted
技术标签:
【中文标题】我们如何提取启动 UWP 应用程序的信息?【英文标题】:How can we extract startup UWP applications information? 【发布时间】:2021-08-30 23:04:32 【问题描述】:我正在使用 C++ 代码库开发取证工具。要求是显示所有启动应用程序。但是,在“HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run”或具有启动应用程序信息的任何其他路径的 RegEdit 中找不到启用在启动时运行的 UWP 应用程序。
如果我必须编写代码来从注册表或 Windows 文件夹中提取 Cortana、Skype、Spotify 等(UWP 应用程序)等启动应用程序,我该怎么做? 有没有存放UWP启动应用的路径?
注意:我知道所有已安装的应用程序都存储在 C:\Program Files\WindowsApps\ 但其中,如何识别哪些启用了启动?
【问题讨论】:
【参考方案1】:使用Windows.Management.Deployment
API。
通过PackageManager.FindPackagesForUserWithPackageType
枚举已安装的包
使用GetPackageApplicationIds
使用StartupTask.GetAsync
通过应用程序ID 获取StartupTask
。
请参阅this sample,它同时作为 C++ 和 C# 提供。
【讨论】:
我试过了,应用需要以管理员身份运行。以上是关于我们如何提取启动 UWP 应用程序的信息?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 UWP 应用重新启动 Windows PC? [复制]