有没有办法通过本机 C# 调用检测系统上安装了哪些 Windows 应用商店应用程序?
Posted
技术标签:
【中文标题】有没有办法通过本机 C# 调用检测系统上安装了哪些 Windows 应用商店应用程序?【英文标题】:Is there a way to detect what Windows Store apps are installed on a system with native C# calls? 【发布时间】:2016-06-24 14:12:27 【问题描述】:我正在尝试为我正在构建的 C# 应用程序复制 Get-AppxPackage 和 Get-ProvisionedAppxPackage Powershell cmdlet 的功能,但不知道如何开始。
由于this problem,我无法使用 C# Powershell API,所以如果可能的话,我想要一个原生 C# 解决方案。
【问题讨论】:
【参考方案1】:您可以使用Windows.Management.Deployement.PackageManager 从代码而不是 PowerShell 中查找、删除、安装等包。
Enumerate app packages sample 演示了如何在 C# 和 C++ 中使用它。
【讨论】:
太棒了!正是我正在寻找的完美解决方案。谢谢。【参考方案2】:不管怎样,我确实找到了一种直接从 WMI 获取此信息的方法:有一个名为 Win32_InstalledStoreProgram 的 WMI 类可以返回所需的信息
【讨论】:
以上是关于有没有办法通过本机 C# 调用检测系统上安装了哪些 Windows 应用商店应用程序?的主要内容,如果未能解决你的问题,请参考以下文章
C# web页面 调用本地的mstsc.exe(远程桌面)?
通过执行本机操作系统的命令(如 curl)通过 MySQL 调用 HTTP GET 请求
通过 Marshal.GetFunctionPointerForDelegate 从本机 (C++) 线程调用托管函数 (C#)