防止以管理权限开始

时间:2011-04-14 07:42:33

标签: windows installer installation inno-setup

目标:

这听起来有点奇怪,但我必须防止软件以管理权限开始。

问题:

我有一个可以很好地安装软件的设置工具。完成后,安装程序将启动软件本身。由于设置工具以管理权限运行,因此在安装后将自动启动的软件也会这样做。

但是那个程序需要的所有设置都不会在那个时候正确地写入/读取,因为由于UAC虚拟化,配置目录与用户没有管理权限的配置目录不同。

问题:

如果父进程拥有管理权限,是否有任何方法可以将管理权限降级为用户权限。 App.config中? StartParameter?或其他什么

信息:我正在使用INNOSETUP构建设置工具。

感谢您的帮助

2 个答案:

答案 0 :(得分:5)

只需设置runasoriginaluser标志即可运行应用程序。

答案 1 :(得分:0)

是的,你可以开始一个非升级的过程,但是我不确定它是如何与InnoSetup集成的。说明为How do I start a program as the desktop user from an elevated app

考虑使用appropriate manifest标记您的应用程序以禁止UAC虚拟化,然后在两种情况下都使用相同的目录:非提升和提升。并且更好地使用用户配置文件中的目录而不依赖于虚拟化。