开机后无需登录即可运行某程序的方法

时间:2022-12-19 16:05:42

思路是将程序做为服务运行。

方法一:

创建服务:sc create “服务名" binpath=空格"X:\*.*(路径)"

删除服务:sc delete "服务名"

开启服务:net start "服务名"

关闭服务:net stop "服务名"

如:sc create "123" binpath= "C:\1.exe" 这就创建了一个名为"123"的服务路径为"C:\1.exe。开启它则运行 net start net start "123“ 要关闭也同理。删除则运行 sc delete “123”。

方法二:

使用Windows NT Resource Kit 提供的2个小工具:

Instrsrv.exe installs and removes system services from Windows NT.

Srvany.exe allows any Windows NT application to run as a service.

Instsrv.exe可以给系统安装和删除服务,Srvany.exe可以让程序以服务的方式运行,你可以到这里下载"Slyar_InstSrv_Srvany.rar"得到它们。下面我来说具体安装过程。

1、将Instsrv.exe和Srvany.exe放置到某目录下,下面用%path%代替路径

2、打开CMD,输入以下内容,其中ServerName为你要创建的服务名称

%path%\instsrv ServerName %path%\srvany.exe

3、打开regedit注册表编辑器,找到以下目录

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<ServerName>

4、鼠标右键单击<ServerName>,创建一个"项",名称为"Parameters"

5、鼠标左键单击"Parameters",在右边点击鼠标右键,创建一个"字符串值"(REG_SZ),名称为"Application",数值数据里填写你要执行的程序完整路径。

6(可选)、鼠标左键单击"Parameters",在右边点击鼠标右键,创建一个"字符串值"(REG_SZ),名称为"DependOnService",数值数据里填写该服务依存的服务名称。不知道依存是什么的,你可以保持继续不知道,我不解释。

7、打开services.msc服务控制面板,找到<ServerName>,鼠标右键-属性-登陆,勾选"允许服务与桌面交互"(一般你要运行的程序都是有界面的吧)。

恩,一般这样就可以了。

补充:程序可以启动后,instsrv.exe可删除,srvany.exe不能删除(包括路径都不能删,不能动)

谢谢原作者,帮我解决了问题