怎么把程序设置成服务启动

怎么把程序设置成服务启动,第1张

很多程序不需要单独的服务,只需要运用WINDOWS已存在的服务项目;有的程序即使需要单独服务,在安装的时候也会自动添加服务项目,如卡巴斯基,深度冰冻等等。

看看这个小文:

Windows服务也称为Windows Service,它是Windows *** 作系统和Windows网络的基础,属于系统核心的一部分,它支持着整个Windows的各种 *** 作。诸如DNS客户端、打印程序、Windows更新服务、计划任务、Windows时间服务、告警器等服务,它们关系到机器能否正确运行。如果不能适当地管理这些服务,就会影响到机器的正常 *** 作。

一个服务首先是一个Win32可执行程序,或者是是rundll32.exe来运行一个.dll的方式形成的进程。

跟普通应用程序不一样,如打开WORD,有一个界面出来,但服务没有用户界面。也不能通过直接双击运行相应的.exe程序来运行。那Windows又是如何控制一个服务的?

Windows的服务由更上一级的services.exe这个服务来管理,由它来管理,负责进行服务的启动、停止、运行,暂停等。我们最常用的 *** 作就是通过Windows的服务MMC界面来完成相关 *** 作。

可知应用程序和服务是不相同的。不能把程序设置为服务启动。

若想让程序随机启动,你可以运用WINDOWS的计划任务,这是个很好用的东东,可以设置很多参数,让你的程序随心所欲的自动运行。在控制面板里可以找到任务计划,点击新建任务就OK了。

刚刚无意看到的,竟然是这样的,我也没想到,呵呵。上面的回答作废啦~~~~~~~

在“开始→运行”中键入“regedit.exe”,打开“注册表编辑器”,展开分支“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services”,在右侧窗格中显示的就是本机安装的服务项。

如果要新建服务,只须点击“编辑→新建→项”,然后为此项命名,如“test”;然后右击该项,选择“新建→字符串值”或“新建→DWORD值”即可。添加一个服务项目具体需要添加的键值如下:

“DisplayName”,字符串值,对应服务名称;

“Description”,字符串值,对应服务描述;

“ImagePath”,字符串值,对应该服务程序所在的路径;

“ObjectName”,字符串值,值为“LocalSystem”,表示本地登录;

“ErrorControl”,DWORD值,值为“1”;

“Start”,DWORD值,值为2表示自动运行,值为3表示手动运行,值为4表示禁止;

“Type”,DWORD值,应用程序对应10,其它对应20。

另外,还要在“test”项下新建一个“Enum”项。按照以上步骤添加QQ程序为服务,重新启动计算机后,打开“服务”窗口,就可以看到刚才添加的QQ服务。

如果要删除某项服务,只要删除注册表的中相关键值即可,本例中要删除QQ服务,直接删除“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\test”分支即可。

Windows的自启动方式

创建时间:2003-10-24

文章属性:转载

文章提交:Sowhat (sowhat_at_linuxforum.net)

/*老文章,但是值得一读*/

Windows的自启动方式

这篇文章断断续续写了有一年,在有些论坛也曾经贴过,读者的回复是两种,

一是不错,二是抄袭。但是我可以保证所有的内容是我个人查阅的资料(包括大脑)和进行试验与思考的结果。如果这也算抄袭,那么我只好苦笑了。

参考的资料名称可以看目录。

如果有人来所取索取doc版本,来封信,我会mail给大家,呵呵。mailto:snaix@yeah.net

Windows的自启动方式

正文:

最后一次修改日期:August 12, 2002

目录:

WINDOWS的自启动方式 1

正文: 1

目录: 1

前言: 2

警告: 2

Windows的自启动方式: 2

1.自启动目录: 2

1.第一自启动目录: 2

2.第二自启动目录: 3

2.系统配置文件启动: 4

1.WIN.INI启动: 4

2.SYSTEM.INI启动: 4

3.WININIT.INI启动: 5

4.WINSTART.BAT启动: 6

5.AUTOEXEC.BAT启动: 6

3.注册表启动: 6

1.常规启动: 6

2.特殊启动1: 8

3.特殊启动2: 8

4.其他启动方式: 8

1.C:\Explorer.exe启动方式: 9

2.屏幕保护启动方式: 9

3.依附启动: 10

4.计划任务启动方式: 10

5.AutoRun.inf启动方式: 10

5.自动启动相关: 11

1.代启动: 11

2.Start启动: 12

3.控制面板启动: 12

4.其他: 12

最后: 13

主要参考资料: 14

http://www.tlsecurity.net/auto.html 14

http://support.microsoft.com/support/kb/articles/Q232/5/09.ASP 17

Syntax for the RunOnceEx Registry Key 17

SUMMARY 17

MORE INformATION 17

RunOnceEx Sample to Run Notepad 18

Sample Syntax 18

Notes 18

Definition of values and Subkeys 18

Wininit.ini与病毒(名称为笔者所加) 20

http://www.microsoft.com/technet/security/bulletin/fq00-052.asp 23

前言:

有时候人们往往会为了一个程序的启动而头痛,因为一些用户往往不知道那些文件是如何启动的。所以经常会有些没用的东西挂在系统上占用资源。有时候也会有人因为不知道如何启动某个文件而头痛。更有些特洛依木马的作者因为不清楚系统的自启动方式而使自己的木马轻松被别人发现……

Windows的自启动方式其实有许多方式。除了一些常见的启动方式之外,还有一些非常隐蔽的可用来启动文件的方式。本文总结如下,虽然不是全部,但我想应该会对大家有所帮助。文章全部以系统默认的状态为准,以供研究。

其中(English)代表英文 *** 作系统,(Chinese)代表中文 *** 作系统。本文没加说明说的全为中文Windows98 *** 作系统。

警告:

文中提及的一些 *** 作可能会涉及到系统的稳定性。例如如果不正确地使用注册表编辑器可以导致可能重新安装系统这样严重的问题。微软也不能保证因不正常使用注册表编辑器而造成的结果可以被解决。笔者不对使用后果负责,请根据自己的情况使用。

Windows的自启动方式:

1.自启动目录:

1.第一自启动目录:

默认路径位于:

C:\windows\start menu\programs\startup(English)

C:\windows\start menu\programs\启动(Chinese)

这是最基本、最常用的Windows启动方式,主要用于启动一些应用软件的自启动项目,如Office的快捷菜单。一般用户希望启动时所要启动的文件也可以通过这里启动,只需把所需文件或其快捷方式放入文件夹中即可。

对应的注册表位置:

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders]

Startup= "%Directory% "

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]

Startup= "%Directory% "

其中“%Directory%”为启动文件夹位置。

英文默认为:

C:\windows\start menu\programs\startup

中文默认为:

C:\windows\start menu\programs\启动

在开始菜单的“启动”文件夹是可更改的,如果用户更改了启动文件夹,则以上注册表的键值均会改变为相应的名称。

值得注意的是:开始菜单的“启动”文件夹中的内容虽然在默认的状态下可以被用户看得一清二楚。但通过改动还是可以达到相当隐蔽地启动的目的的:

首先,“启动”文件夹中的快捷方式或其他文件的属性可以改变为“隐藏”。这样可以达到系统不启动被隐藏的文件,等到需要启动的时候又可以通过更改回文件属性而恢复启动的作用。

其次,其实“启动”文件夹只是一个普通的文件夹,但是由于系统监视了这个文件夹,所以变得有些特殊,但文件夹有的功能该文件夹也是有的。譬如“启动”文件夹的名称是可以更改的,并且“启动”文件夹也可以设置属性。如果把属性设置为“隐藏”,则在系统中的【开始】【程序】菜单中是看不到“启动”文件夹的(即使在“文件夹选项”中已经设定了“显示所有文件”)。而系统还会启动这个被隐藏的文件夹中的非隐藏文件。

敏感的人们也许已经发现问题。举一个例子:

如果我想启动A木马的server端服务器,我可以把原来的“启动”菜单的名称更改为“StartUp”(这里是随便改的,注册表相应的键值也会自动更改。)之后再创建一个名为“启动”的文件夹,把“StartUp”菜单中的文件全部复制(这里用复制,可以骗过用户的检查)到“启动”菜单中,然后把A木马的server程序放入“StartUp”文件夹中,最后把“StartUp”文件夹隐藏。大功告成!

从外表看来,用户的【开始】【启动】目录还在,而且要启动的文件也在。但系统此时启动的文件不是名为“启动”的文件夹中的文件,而是名为“StartUp”的文件夹中的文件。如果木马做的好的话,完全可以在每次启动的时候把“StartUp”中的文件复制到“启动”目录中来达到实时更新启动目录的目的。由于“StartUp”文件夹被隐藏,从【开始】【程序】中是无法看到真正的启动菜单“StartUp”的,所以达到了隐蔽启动的目的!

这个启动方式虽然比较隐蔽,但通过msconfig依旧可以在“启动”页中看出来。

2.第二自启动目录:

是的,其实,Windows还有另外一个自启动目录,而且很明显但却经常被人们忽略的一个。

该路径位于:

C:\WINDOWS\All Users\Start Menu\Programs\StartUp(English)

C:\WINDOWS\All Users\Start Menu\Programs\启动(Chinese)

这个目录的使用方法和第一自启动目录是完全一样的。只要找到该目录,将所需要启动的文件拖放进去就可以达到启动的目的。

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\explorer\User Shell Folders]

"Common Startup "= "%Directory% "

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\explorer\Shell Folders]

"Common Startup "= "%Directory% "

值得注意的是:该目录在开始菜单的“启动”目录中是完全不能被看见的。而伴随着每次启动,该目录下的非隐藏文件也会随之启动!

另外,在Msconfig中可以看到在这个目录下要启动的文件。

要把应用程序添加为服务,你需要两个小软件: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”则显示了服务之间的依存关系,可以让你察看这个服务的运行依赖哪些其它服务,以及还有什么服务依赖于这个服务。这后面几个对我们一般用户没有什么意义。经过这些设置,你的服务已经完全可以正常工作了。注销一下看看。为了让你看清除,我们先打开OE,这时在任务管理器里,有两个msimn进程,用户名为“.com.cn”的是我们打开的OE,而用户名为“SYSTEM”的就是我们添加的服务。如果你玩够了,不想再运行这个服务,可以直接禁止它在启动的时候运行,或者使用Instsrv.exe程序删除。方法是在命令行下输入“c:\instsrv.exe Mail remove”,然后回车就可以了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12001195.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存