寻找“程序自动运行”的根源

 

电脑的程序运行越多,速度将变得越慢。我们在启动电脑时,经常会发现一开机就打开许多不想要程序。开机所看到的这些程序只是自动运行程序中的一小部分,大部分都是看不到程序界面的,有些缩小为图标显示在系统托盘(屏幕右下角)中,有相当一部分自动运行的程序没有任何界面或图标,而直接在系统内存中以进程的形式运行,尤其是病毒程序,消耗大量的系统资源。

本文就详细介绍一下,启动电脑时到底都有哪些程序在自动运行。根据这些启动的项目,希望能够帮助您判断哪些程序需要自动运行,哪些程序不需要,甚至哪些程序是病毒。

一、当前用户专用的启动目录

这是许多应用软件自动运行的常用位置。例如,当前用户为jh,则默认情况下专用的启动目录路径为“C:/Documents and Settings/jh/「开始」菜单/程序/启动”。

二、对所有用户有效的启动目录

不管以什么用户名登录系统,放入该目录中的文件总自动运行。该目录的默认路径为:“C:/Documents and Settings/All Users/「开始」菜单/程序/启动”。

 

 

今天,许多电脑的IE输入网址后回车没有反应,事发前没有任何征兆。根据以往经验,经过反复试验,最终使用以下操作解决问题。

1、打开C:/winnt/system32/drivers/etc(XP是Windows),将其中的hosts文件删除。

2、打开“Internet选项”对话框,切换到“连接”选项卡,单击“局域网设置”按钮,取消“自动检测设置”。

3 、单击“确定”按钮,应用设置。再打开 IE 上网试试吧!

上述两个启动目录中的文件通常直接显示在“开始/程序”菜单中的“启动”项中,其中自动运行的程序通常为正常的应用程序,如果不想让其自动运行,可以直接将其快捷方式删除。

三、Run注册键

Run是自动运行程序最常用的注册键,运行regedit命令,打开注册表编辑器。注册表中的位置是HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Run和HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Run。两者均在“启动”目录之前运行,但USER下面的Run键紧接MACHINE下面的Run键运行。

紧挨着Run注册键,下面通常还有RunOnce、RunOnceEx、RunServicesOnce、RunServices等含有Run字符的键值,其中的内容也开机自动运行。

Run注册键中自动运行的项目少部分是系统程序,如输入法程序internat.exe及杀毒软件实时监控,大部分是一些垃圾软件及个别并不高明的病毒程序所创建的自动运行项目。

HKEY_CURRENT_USER下面缩写为HKCU,HKEY_LOCAL_MACHINE下面缩写为HKLM。

四、Load注册键

这个自动运行键比较隐蔽,实际上它能够将程序调入并自动运行。在注册表中的位置是HKCU/Software/Microsoft/Windows NT/CurrentVersion/Windows下面的load字串值。

Load注册键值通常为空,一些病毒程序会修改此键值达到自动运行的目的。

五、Userinit注册键

Userinit启动项也比较隐蔽,在注册表中的位置是HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Winlogon下面的Userinit字串值。

该注册键下面有一个userinit.exe的值,默认指向C:/WINDOWS/system32/userinit.exe。userinit.exe是Windows操作系统一个关键进程,用于管理不同的启动顺序。系统刚启动时,调出任务管理器就会看到userinit.exe,系统各项加载完,userinit.exe会自动消失。此键不能删除,否则系统登录之后总是自动注销,但这个键允许指定用逗号分隔的多个程序自动运行。

Userinit键一般只有userinit.exe关键进程,一些病毒程序也会修改此键值达到自动运行的目的。

六、Explorer/Run注册键

和load、Userinit不同,Explorer/Run键在HKCU和HKLM下都可以有。之所以说都可以有,是因为这两个键值也许没有,可以根据实际需求创建,这两个自动运行项也是病毒程序喜欢光顾的地方。在注册表中的具体位置是HKCU/Software/Microsoft/Windows/CurrentVersion/Policies/Explorer/Run,和HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/Policies/Explorer/Run。

七、shell注册键

Shell注册键的作用是调用explorer.exe系统外壳程序,即通常看见的桌面。Shell在注册表中的位置是HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Winlogon。默认情况下只有explorer.exe,但使用空格分隔可以实现开机同时启动多个应用程序。一些病毒程序会将自己加到shell注册键中以实现自启动的目的。

 

全面揪出系统自启动程序

一、经典的启动——“启动”文件夹

  单击“开始→程序”,你会发现一个“启动”菜单,这就是最经典的Windows启动位置,右击“启动”菜单选择“打开”即可将其打开,其中的程序和快捷方式都会在系统启动时自动运行。

  二、有名的启动——注册表启动项

  注册表是启动程序藏身之处最多的地方,主要有以下几项:

  1.Run键

  Run键是病毒最青睐的自启动之所,该键位置是[HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Run]和[HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Run],其下的所有程序在每次启动登录时都会按顺序自动执行。

  还有一个不被注意的Run键,位于注册表[HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Policies/Explorer/Run]和[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Policies/Explorer/Run],也要仔细查看。

  2.RunOnce键

  RunOnce位于[HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/RunOnce]和[HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/RunOnce]键,与Run不同的是,RunOnce下的程序仅会被自动执行一次。

  3.RunServicesOnce键

  RunServicesOnce键位于[HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/RunServicesOnce]和[HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/RunServicesOnce]下,其中的程序会在系统加载时自动启动执行一次

  4.RunServices键

  RunServices继RunServicesOnce之后启动的程序,位于注册表[HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/RunServices]和[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/RunServices]键。

  5.RunOnceEx键

  眉 荳indows XP/2003特有的自启动注册表项,位于[HKEY_CURRENT_USER//SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnceEx]和[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnceEx]。

  6.load键   

  [HKEY_CURRENT_USER/Software/Microsoft/WindowsNT/CurrentVersion/Windows]下的load键值的程序也可以自启动。

  7.Winlogon键

  该键位于位于注册表[HKEY_CURRENT_USER/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Winlogon]和[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Winlogon],注意下面的Notify、Userinit、Shell键值也会有自启动的程序,而且其键值可以用逗号分隔,从而实现登录的时候启动多个程序。

  8.其他注册表位置

  还有一些其他键值,经常会有一些程序在这里自动运行,如:  

  [HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Policies/System/Shell][HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/ShellServiceObjectDelayLoad][HKEY_CURRENT_USER/Software/Policies/Microsoft/Windows/System/Scripts][HKEY_LOCAL_MACHINE/Software/Policies/Microsoft/Windows/System/Scripts]

  小提示

  注册表的[HKEY_LOCAL_MACHINE]和[HKEY_CURRENT_USER]键的区别:前者对所有用户有效,后者只对当前用户有效。

  三、古老的启动——自动批处理文件

  从DOS时代过来的朋友肯定知道autoexec.bat(位于系统盘根目录)这个自动批处理文件,它会在电脑启动时自动运行,早期许多病毒就看中了它,使用deltree、format等危险命令来破坏硬盘数据。如“C盘杀手”就是用一句“deltree /y c:/*.*”命令,让电脑一启动就自动删除C盘所有文件,害人无数。

  小提示

  ★在Windows 98中,Autoexec.bat还有一个哥们——Winstart.bat文件,winstart.bat位于Windows文件夹,也会在启动时自动执行。

  ★在Windows Me/2000/XP中,上述两个批处理文件默认都不会被执行。

  四、常用的启动——系统配置文件

  在Windows的配置文件(包括Win.ini、System.ini和wininit.ini文件)也会加载一些自动运行的程序。

  1.Win.ini文件

  使用“记事本”打开Win.ini文件,在[windows]段下的“Run=”和“LOAD=”语句后面就可以直接加可执行程序,只要绦蛎 萍奥肪缎丛凇埃健焙竺婕纯伞?

  小提示

  “load=”后面的程序在自启动后最小化运行,而“run=”后程序则会正常运行。

  2.System.ini文件

  使用“记事本”打开System.ini文件,找到[boot]段下“shell=”语句,该语句默认为“shell=Explorer.exe”,启动的时候运行Windows外壳程序explorer.exe。病毒可不客气,如“妖之吻”病毒干脆把它改成“shell=c:/yzw.exe”,如果你强行删除“妖之吻”病毒程序yzw.exe,Windows就会提示报错,让你重装Windows,吓人不?也有客气一点的病毒,如将该句变成“shell=Explorer.exe 其他程序名”,看到这样的情况,后面的其他程序名一定是病毒程序如图2所示。

  3.wininit.ini

  wininit.ini文件是很容易被许多电脑用户忽视的系统配置文件,因为该文件在Windows启动时自动执后会被自动删除,这就是说该文件中的命令只会自动执行一次。该配置文件主要由软件的安装程序生成,对那些在Windows图形界面启动后就不能进行删除、更新和重命名的文件进行操作。若其被病毒写上危险命令,那么后果与“C盘杀手”无异。

  小提示

  ★如果不知道它们存放的位置,按F3键打开“搜索”对话框进行搜索;

  ★单击“开始→运行”,输入sysedit回车,打开“系统配置编辑程序”,在这里也可以方便的对上述文件进行查看与修改。

  五、智能的启动——开/关机/登录/注销脚本

  在Windows 2000/XP中,单击“开始→运行”,输入gpedit.msc回车可以打开“组策略编辑器”,在左侧窗格展开“本地计算机策略→用户配置→管理模板→系统→登录”,然后在右窗格中双击“在用户登录时运行这些程序”,单击“显示”按钮,在“登录时运行的项目”下就显示了自启动的程序。

  六、定时的启动——任务计划

  在默认情况下,“任务计划”程序随Windows一起启动并在后台运行。如果把某个程序添加到计划任务文件夹,并将计划任务设置为“系统启动时”或“登录时”,这样也可以实现程序自启动。通过“计划任务”加载的程序一般会在任务栏系统托盘区里有它们的图标。大家也可以双击“控制面板”中的“计划任务”图标查看其中的项目。

  小提示

  “任务计划”也是一个特殊的系统文件夹,单击“开始→程序→附件→系统工具→任务计划”即可打开该文件夹,从而方便进行查看和管理。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值