NSIS安装程序要求修改计算机

Nic*_*ell 1 uac nsis

我有一个程序解压缩到TEMP目录,运行自己,然后从TEMP目录中删除自己.当我使用NSIS生成的单文件可执行文件尝试运行时,UAC会询问:"您是否希望允许来自未知发布者的以下程序修改您的计算机?"

澄清一下:安装程序仅解压缩到TEMP目录,并且包含的​​程序不会触发UAC.我认为它与NSIS的作用有关,但我无法弄清楚是什么或如何阻止它.我已经删除了我的NSIS脚本的几乎所有行,它仍然激怒了UAC.

如果重要的话,我在Windows 7上的python2.5上使用py2x和pymunk和pygame库.(但同样,它只会在通过NSIS时触发UAC.)

如何让它不会触发UAC的任何内容?我需要签名密钥吗?

And*_*ers 5

RequestExecutionLevel用户

发生这种情况是因为Windows错误地将NSIS检测为需要管理员权限的安装程序.MS在没有询问NSIS开发人员的情况下添加了这种检测!

你可能想使用$ pluginsdir,它被nsis自动删除:

Section
InitPluginsDir
SetOutPath $pluginsdir
File myapp.exe
ExecWait '"$pluginsdir\myapp.exe"'
SetOutPath $temp ;make sure pluginsdir is not locked
SectionEnd
Run Code Online (Sandbox Code Playgroud)