我在 Windows 7 启动时运行我的应用程序安装程序,然后安装程序要求重新启动系统。现在,我将方法写入 RunOnce 注册表项,以便我的安装程序仅运行一次,之后会自动删除该条目。
现在,上述方法运行良好,除了一件事:在安装完成并关闭之前,我无法通过这种方法显示桌面。
我认为此行为是 RunOnce 方法的默认行为。想确认一下,如果需要,我可以使用Run
替代RunOnce
键并在完成工作后从那里删除条目。还有其他方法可以玩转RunOnce
键吗?
答案1
答案是我需要使用 HKCU 的 RunOnce 方法而不是 HKLM。Windows 执行启动项的顺序是:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices
<Logon Prompt>
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
启动文件夹
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce