如何强制安装一个安装项目的Windows应用程序,以便每次有人登录到Windows时都会启动它?
编辑:我知道注册表设置,但具体来说,我正在寻找一个允许安装程序设置注册表值的解决方案。
答案 0 :(得分:7)
打开您的注册表并找到密钥
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run].
对于您要启动的每个程序,使用描述性名称自动创建新的字符串值,并将字符串的值设置为程序可执行文件。
例如,要自动启动记事本,请添加
的新条目"Notepad"="c:\windows\notepad.exe".
删除启动应用程序
如果您尝试删除程序但无法在StartUp文件夹中找到它(通常为C:\WINDOWS\Start Menu\Programs\StartUp
),则可能是从下面的某个注册表项启动。要删除它,请删除与要删除的程序关联的值。
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run]
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce]
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices]
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce]
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce]
[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows]
答案 1 :(得分:2)
如果您确实需要在Windows启动时启动应用程序,而不是在有人登录时需要将其创建为服务,并在安装时将服务设置为“自动”。
网上有很多地方可以为您提供有关此内容的信息:
是我找到的前三个,但做了一些研究并找到适合你的资源。
<强>更新强>
我从更新的问题中看到,当有人登录时,要求程序运行,因此这个答案(在某种程度上)是多余的。但是,如果有人想要服务根目录,我会留在这里。
答案 2 :(得分:1)
您可以在“启动文件夹”中为winforms程序添加快捷方式。您需要查看安装项目的文件系统。
答案 3 :(得分:1)
从技术上讲,当“Windows启动”时,你无法启动WinForms应用程序;但是,当有人登录Windows时,您可以启动它。要执行此操作,您可以执行以下三种操作之一:
更新:克里斯指出我错过了HKCU路径。
答案 4 :(得分:1)
每次 Windows 启动时,您应该将程序构建为Windows服务(或者可能来自服务)。