我正在使用 Inno Setup 使我的 exe 可安装。我使用它的向导创建了运行良好的设置。
但我想为用户做出选择,使应用程序随 Windows 启动而启动。我该怎么做?
我只想为用户提供简单的界面,无需用户进行手动工作。
要使应用程序在用户登录时启动,请使用
Software\Microsoft\Windows\CurrentVersion\Run
部分中的条目将条目添加到
[Registry]
注册表项。
另请参阅
请勿使用
[Icons]
,这是一个遗留解决方案。
要允许用户选择是否配置自动启动,请将
[Registry] entry
与 task 关联,例如:
[Tasks]
Name: startup; Description: "Start application when user logs in"
[Registry]
Root: HKLM; Subkey: "Software\Microsoft\Windows\CurrentVersion\Run"; \
ValueType: string; ValueName: "MyProgram"; ValueData: "{app}\MyProg.exe"; \
Tasks: startup
或者,您可以使用任务计划程序,它允许您的应用程序甚至在任何用户登录之前启动:
要访问 HKLM 部分中的写入,您必须设置以下标志:
[Setup]
PrivilegesRequired=admin
ArchitecturesInstallIn64BitMode=x64
否则使用HKCU