这个问题来自我的另一个问题。请参阅更多背景here。
从另一篇文章来看,我的应用程序必须以当前帐户持有人的名义运行。我正在使用Inno-setup来安装这个应用程序。可以选择安装“仅为当前用户自动启动”或“为所有用户自动启动”。但是,这两个选项对我来说似乎不起作用,因为程序总是在“admin”用户下启动,这使我的应用程序无法运行。
如果我从标准用户帐户安装应用程序,我必须以不同的用户(admin)运行安装。在这种情况下,我不能使用“仅为当前用户自动启动”选项,因为安装程序的“当前用户”是管理员,而不是标准用户,因为我发现了。
经过多次争论,我发现,我不得不放弃创新设置的“自动启动”功能。首先以标准帐户作为其他用户(管理员)安装它。然后,我不得不手动向HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Run添加一个条目,以便在Windows启动时自动启动。这有效,但我无法相信没有更好的方法来做到这一点。
以下是相关的创新脚本:
[Tasks]
Name: startup; Description: "Launch automatically when Windows starts up"; GroupDescription: "Additional icons:"
Name: startup\user; Description: "For the current user only"; GroupDescription: "Additional icons:"; Flags: exclusive unchecked
Name: startup\common; Description: "For all users"; GroupDescription: "Additional icons:"; Flags: exclusive
我正在使用最新的Inno-Setup(v5.4.2)。我在这里错过了什么吗?
答案 0 :(得分:2)
我意外地将以下行添加到我的inno安装脚本中,结果是我的程序在每次启动时自动启动。
[Icons]
Name: "{commonstartup}\LoopJam"; Filename: "{app}\resources\LoopJam.exe"; IconFilename: "{app}\LoopJam.ico";
答案 1 :(得分:0)
Inno没有“自动启动”功能,您忽略了向我们显示实际创建“运行”值的行。 话虽如此,只需添加到HKLM资源管理器运行密钥将导致它在登录时为每个用户运行。