如何提前启动一个程序

尚方宝剑彤叟无欺 2005-02-04 10:33:17
各位高手:
首先祝各位春节愉快,高分求解,请问如何在win2000 server 开机后,登录前运行一个程序。谢谢
...全文
153 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
有一款工具可以将一个普通的程序作为系统服务执行,你可以到google中搜索“ntservice.exe”就可以找到了。
需要说明一点的是:
对于非服务启动的程序,也曾有过教程或第三方程序去帮助那些非服务启动的程序以服务启动,但
是安装起来麻烦,还要修改好些注册表的地方,最不足的就是如果有三个程序想以服务启动的话,
那个第三方程序是要被执行三次的,这样会浪费系统资源,以下是一种比较好的解决方法:
写一个以服务启动的程序(命名为Serivce Loader,然后这程序被执行时会读入配置文件,配置文件中是写入了特定格式的要被执行的程序,这样的话,只要安装那个Service Loader,那样就可以读
入配置文件中要被执行的非服务启动的程序,这样会节省很多资源。
以下说明是关于如何使用Service Loader:
程序名字是ntservice.exe,你可以修改程序名字,将这程序和一个ini文件,这个ini文件的名字可改,不过要和ntservice.exe同时改.例如你将ntservice.exe改为abc.exe,那么ntservice.ini就要改为abc.ini,这样程序才能识别。使用方法如下:
将ntservice.exe以及ntservice.ini复制到同一个目录中,以下是ntservice.ini的格式:
[Settings]
ServiceName = NTService
LogEnable = 0
ProcCount = 2
[Process0]
CommandLine = notepad.exe
PauseStart = 1000
PauseEnd = 1000
UserInterface = Yes
[Process1]
CommandLine = legend.exe
PauseStart = 1000
PauseEnd = 1000
UserInterface = No

第一行中的[Settings]
不能改变

第二行中的ServiceName = NTService
你可以将NTService改为你喜欢的服务名字

第三行LogEnable = 0
这里0代表Service Loader不自动生成一个日志,如果1就是会生成一个叫ntservice.log的文件,里
面会记录了这服务启动以及启动配置文件中的程序的情况.

第四行ProcCount = 2
2代表你将会设置两个程序让Service Loader在启动时去执行,如果你想设置三个程序让Service loader
去执行,可以改为3

第五行[Process0]代表了第一个要被执行的程序的设置。

第六行CommandLine = notepad.exe
这代表了将会让Service Loader去执行notepad.exe这程序

第七行和第八行不用理会

第九行UserInterface = Yes
Yes代表了程序执行时会显示它的窗口,如果设置为No的话,程序会在后台被执行,不会显示窗口。

从第10行开始[Process1],这代表了第二个要被执行的程序的设置开始

第11行CommandLine = legend.exe
这代表了将会让Service Loader去执行一个叫Legend.exe的程序

第12和13行不用理会

第14行UserInterface = No
No代表了程序被执行时不显示其窗口,会在后台悄悄执行

如果你还有第三个程序或更多程序要被执行时,就继续加入配置如下
[Process2]
CommandLine = backdoor.exe
PauseStart = 1000
PauseEnd = 1000
UserInterface = No
[Process3]
CommandLine = trojan.exe
PauseStart = 1000
PauseEnd = 1000
UserInterface = No
[ProcessN]
CommandLine = xyz.exe
PauseStart = 1000
PauseEnd = 1000
UserInterface = No

上面的[ProcessN]中的N不能超过20,不过认为这是足够用的了,没可能执行超过20个木马或后门
在一个系统吧。

好了,以下就说说ntservice.exe的安装以及其它功能.
当你将ntservice.exe和ntservice.ini复制到同一个目录中去后,你就可以在命令行中执行
ntservice.exe -insall
这样ntservice这个服务就被安装进去系统了,然后执行
net start ntservice
这样服务就被启动了,不过如果你在那个ntservice.ini中将ServiceName = NTService中
NTService修改为其它名字,例如改为abcdefg,那么你要用的命令去执行服务了
net start abcdefg

服务被启动后,就会读入配置文件(ntservice.ini),去启动里面的要执行的程序了。
还有命令是
netservice.exe -kill 服务名字
这个可以自己停自己的服务或停其它服务

netservice.xe -uninstall
会将自己这个服务删除,在用这命令前一定要将服务停止,停止
服务可以用net stop ntservice或netseriv.cexe -kill ntservice

压缩包中有三个文件,
ntservice.exe 主程序
ntservice.ini (修改一下就可以用了)
readme.txt 说明文件



huawei8 2005-02-04
  • 打赏
  • 举报
回复
让程序作为服务运行

想让一个程序在启动系统的时候自动运行,你有什么好办法?添加到启动组?那如果别人删除掉就不管用了。如果你使用了Windows NT/2000/XP,就可以试试把这个程序添加为一个服务,这样只有拥有权限的人才可以更改服务,只要你设置好权限,就不用担心会被别人删除了。

要把应用程序添加为服务,你需要两个小软件:Instsrv.exe和Srvany.exe。Instsrv.exe可以给系统安装和删除服务,Srvany.exe可以让程序以服务的方式运行。这两个软件都包含在Windows NT Resource Kit里,如果你没有,也可以点击这里下载。

把这两个程序保存在一个方便的位置,例如C盘根目录下。我们举例来说明,把OE作为一个服务添加进Windows XP Professional操作系统中,并把这个服务命名为“Mail”。在运行中输入“CMD”,回车,打开命令行窗口,在提示符后面直接输入:“c:\instsrv.exe Mail c:\srvany.exe”然后回车,其中的“c:\instsrv.exe”和“c:\srvany.exe”表示这两个程序保存的位置,而Mail则是你想添加的服务名称。

运行Regedit打开注册表编辑器,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services下,找到刚才添加的Mail,点击右键,新建一个键,命名为“Parameters”,点击新建的Parameters,并再次新建一个名称为“Application”的子键,数据类型为“REG_SZ”,数值为希望作为服务运行的程序的所在位置,如果你的Windows系统安装在C盘下,那么OE的程序位置就是C:\Program Files\Outlook Express\msimn.exe ,把这个路径添入数值中。到现在,这个服务已经成功的添加并且设置好了。如果你希望做的更加专业,可以在Mail服务下建立一个名为Description的子键,数据类型同样为REG_SZ,数值可以写一些你对这个服务的描述,这个我们在后面可以看到。

接下来需要对服务做一些额外的设置,在运行中输入“Services.msc”并回车,在列表中找到我们刚添加的Mail服务,双击打开,来做详细的设置。在“General”选项卡上,我们需要设置这个服务的运行方式,在图二中可以看见,作为一个服务,有“自动(Automatic)”,“手动(Manual)”和“禁止(Disabled)”三种启动类型,按照需要,我们一般设置成自动就可以了。而在“Logon”选项卡下可以设置以什么身份运行这个服务,一般可以不用理会,按照默认的设置。“Recovery”选项卡下则是进行恢复设置的,你可以指定,在服务第一次,第二次和第三次出错之后分别采取什么措施。“Dependencies”则显示了服务之间的依存关系,可以让你察看这个服务的运行依赖哪些其它服务,以及还有什么服务依赖于这个服务。这后面几个对我们一般用户没有什么意义。经过这些设置,你的服务已经完全可以正常工作了。
  • 打赏
  • 举报
回复
如何将一个文件设置为服务
pikachu8guan 2005-02-04
  • 打赏
  • 举报
回复
可以做为服务来启动
  • 打赏
  • 举报
回复
番茄花园,你好:请回答具体一点好吗.谢谢
md5_home 2005-02-04
  • 打赏
  • 举报
回复
漫游用户配置文件中的运行脚本

6,871

社区成员

发帖
与我相关
我的任务
社区描述
Windows 2016/2012/2008/2003/2000/NT
社区管理员
  • Windows Server社区
  • qishine
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧