首先,去下载一个叫rktools.exe的工具(我提供个下载地址Windows 2003 Resource Kits),下载完后安装该资源包,里面有个instsrv.exe和srvany.exe的工具,就能够将普通进程转化为系统服务。
其次,进入控制台程序(运行->cmd),键入:instsrv 服务名 "程序路径",成功后就能够在系统服务中查找到该服务了,并尝试启动该服务,启动失败的话继续往下看。
然后,进入注册表(运行->regedit),找到HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\服务名,将ImagePath的值指向srvany.exe的路径,同时新建项Parameters,并在其中新建字符串application,将application的值指定为原程序路径。
(如需要删除服务,只需要将注册表中HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\服务名删除即可)
最后,重新启动服务。可能因为前面启动失败,而导致无法启动,重启电脑后就没问题了。
下面写个简单列子(服务名:test,程序路径:c:\app.exe)
1.下载rktools.exe,并安装;
2.进入控制台,键入instsrv test "c:\app.exe";
3.进入注册表,找到HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\test,
将ImagePath值指向srvany.exe的路径,
新建项Parameters,并新建字符串application,同时将值设为c:\app.exe;
4.启动服务。