我有这个 nsis 安装程序脚本。它设置为安装到
InstallDir $DOCUMENTS\OCTGN\OCTGN
问题是,安装程序安装了 .net 4.0 和 vc2010,所以它需要提升才能工作。当它被提升时,如果用户的帐户是“标准用户”,它将最终安装到管理员的“我的文档”文件夹中。
有没有人对我如何解决这个问题有任何想法,以便将其安装到正确的位置?
附带说明:我不想更改程序文件、应用程序数据或任何其他位置。
您基本上是在与 UAC 的设计方式作斗争,最好的选择是不要混合写入 HKLM 与 HKCU 以及 $ProgramFiles 与 $Profile。
一个不错的解决方法是使用RequestExecutionLevel user
,如果您检测到未安装 .net 4.0 或 vc2010,则提取一个请求提升的迷你安装程序并执行设置的管理部分。
您最后的选择是使用UAC 插件...