.msi文件在“ asInvoker”的requestedExecutionLevel中要求管理员权限

时间:2019-01-31 10:29:23

标签: windows-installer

到目前为止,我有一个Windows应用程序项目,执行级别设置为“ requireAdministrator”,但是我想更改此设置,以便非管理员用户可以使用该应用程序。我在app.manifesto文件(下面的代码)中进行了设置

但是当我从非管理员用户那里尝试该项目时,它仍然会要求管理员特权。

我也尝试了“ highestAvailable”,但还是一样。

有人知道我在做什么错吗?

<requestedExecutionLevel  level="asInvoker" uiAccess="false" />

1 个答案:

答案 0 :(得分:0)

申请清单 :您将其添加到哪里?在打包应用程序之前,在 app.manifest 中?如果您实际上重新编译了二进制文件并正确地嵌入了清单,那将影响application.exe文件本身。它不会影响MSI。

每个用户安装:如果您是作者,支持MSI只能安装没有管理员权限的 per-user installation 。换句话说,您需要编写整个MSI才能与按用户安装兼容。在大多数情况下,这需要对MSI进行很多设计更改,而我总体上并不喜欢这个概念。 MSI通常是针对每台计算机安装而设计的,并且每用户的概念和机制都具有反模式行为恕我直言的方面。但是,以下是有关此主题的一些链接:


MSIX :本质上,我不推荐这种针对每个用户的方法。您可以使用其他安装技术?默认情况下,块MSIX上的新用户具有按用户安装的功能。我不是专家,但是Advanced Installer的Bogdan Mitrache是并且已经对该新技术进行了出色的总结:MSIX Tutorial: A comprehensive 24-chapter guideOne of his recent answers on MSIX

<强> APPV :还有AppV - 其中许多公司目前使用的应用程序部署的虚拟包。冠军(Kahuna)在这里Tim Mangan


某些链接