簡體   English   中英

如何在所有用戶中獲得UWP10中已安裝的軟件包?

[英]How to get installed packages in UWP10 across all users?

我正在開發一個UWP,在其中我需要獲取系統上所有已安裝軟件包的列表,是否為此使用任何API?

是執行此操作的示例。 它也應適用於UWP Apps。

這些是您需要的行:

Windows.Management.Deployment.PackageManager packageManager = new Windows.Management.Deployment.PackageManager();
IEnumerable<Windows.ApplicationModel.Package> packages = (IEnumerable<Windows.ApplicationModel.Package>) packageManager.FindPackages();

然后,您可以遍歷軟件包並獲取所需的信息。

現在,此代碼存在問題:它無法在UWP應用程序中運行(請參閱此處 )。 您將獲得拒絕訪問的異常。 現在,可以選擇將此代碼外包給某個組件,以允許這樣做並從UWP應用觸發它。

(本來可以發表評論,但是我的聲譽仍然很低)

上面的代碼對我來說並不立即起作用。 我必須在Package.appxmanifest中添加受限功能 必須在文件頂部添加一個新的名稱空間:

xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"`

<rescap:Capability Name="packageQuery" />

到功能標簽。 根據信息,您可能需要將'rescap'名稱空間添加到Ignorable列表中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM