2017-08-27 43 views
1

我试图以编程方式安装软件包。我需要创建包管理器实例。这是投掷E_ACESSDENIED!Windows通用应用程序部署问题

Windows.Management.Deployment.PackageManager packageManager = new Windows.Management.Deployment.PackageManager(); 

例外:

System.UnauthorizedAccessException: 'Access is denied. (Exception from 
HRESULT: 0x80070005 (E_ACCESSDENIED))' 

我在管理帐户。这个API有什么问题?

+0

中添加按照下面的答案清单管理包的能力和它的工作: https://stackoverflow.com/questions/38721521/findpackagesforcurrentpublisher-in-windows-10-for-pc –

回答

1

您需要在清单中声明'packageQuery'和/或'packageManagement'功能(取决于您需要使用哪个PackageManager API),以便从UWP应用程序创建PackageManager实例。

如果您打算将此应用程序提交给Windows应用商店,则您的帐户/应用需要获得批准才能使用此受限制的功能,否则应用商店提交将被拒绝。

+0

packageManagement或packageQuery? packageManagement为我工作。 –

+0

取决于您正在使用的PM API。如果您不使用FindPackage * API,则可能不需要声明'packageQuery'。我会编辑我的答案。 –