我想在uwp项目中打开PowerPoint,并且使用功能FindPackagesForUser。我已经在清单中添加了rescap。代码如下:
var pkgManager = new PackageManager();
var pkg = pkgManager.FindPackagesForUser(String.Empty, Microsoft.Office.Desktop.PowerPoint_8wekyb3d8bbwe).FirstOrDefault();
if (pkg == null) return null;
var apps = await pkg.GetAppListEntriesAsync();
var firstApp = apps.FirstOrDefault();
但是,pkg返回null。 'Microsoft.Office.Desktop.PowerPoint_8wekyb3d8bbwe'是PowerPoint的程序包名称。如果我将其替换为本地计算器的软件包名称“ Microsoft.WindowsCalculator_8wekyb3d8bbwe”,它将成功。我真的很好奇为什么。
答案 0 :(得分:0)
FindPackagesForUser
用于查找为指定用户安装的软件包。实际上,查找路径为C:\Users\YouAccount\AppData\Local\Packages
,在Packages下找不到Microsoft.Office.Desktop.PowerPoint_8wekyb3d8bbwe
product folder,因为它是桌面产品ID。
uwp powerpoint的生产ID为Microsoft.Office.PowerPoint_8wekyb3d8bbwe
,如果已安装,则会找到该文件夹。