通行证:环境变量中保存了很多重要的路径位置,如果环境变量中的数据被破坏,就有可能导致此问题。解决方法是右击“我的电脑”,选择“属性”,在“系统属性”窗口中选择“高级”选项卡,点击“环境变量”按钮,将弹出窗口下方“系统变量”列表中的“Path”值设为系统目录所在位置(如“C:\windows\system32”和“C:\windows”),中间用分号“;”隔开(见图4)。另外,如果安装了双系统(比如Windows 98和Windows XP),那么在Windows 98中安装的软件在Windows XP下就有可能无法运行(绿色软件除外),解决的方法是将Windows 98的系统目录位置添加进Windows XP的Path环境变量中(此法只适用于部分软件,有些软件在安装时会根据当前系统的版本来选择安装对应的执行文件版本,比如“千千静听”的安装文件中就有TTPlayer_A和TTPlayer_W两个版本,这类软件不能跨平台使用)。

干扰运行的幕后黑手:防火墙
安全防护软件的保护功能有时会将正常的程序操作拒之门外,导致程序运行失败。
1.WinPatrol阻止自启动
特征:运行程序后,WinPatrol弹出警告框提示是否允许其加入自启动项,选择“否”后程序异常退出。
通行证:这类程序在加入自启动时没有做好错误处理,在出现自启动写入失败后,程序就异常退出了,可以首先在弹出提示时允许其加入自启动项,然后在这个程序的相关设置选项中手动去除开机自启动的勾选。
2.内存溢出保护
特征:打开某些程序时出现防火墙警告,程序错误退出。
通行证:Windows XP SP2自带的“数据执行保护”功能、McAfee VirusScan 8.0i的“溢出防护”功能都有可能与一些程序产生兼容性问题,解决的方法是暂时禁用这些功能或者将有兼容性问题的程序加入相关功能的排除列表中。除了病毒防火墙之外,网络防火墙也有可能导致此问题,比如禁用QQ的网络连接就有可能使QQ进入假死崩溃状态。
火速链接:关于“数据执行保护”的使用请参考本刊2005年第7期的《Windows内置的病毒防护—DEP》。
3.依赖的服务被禁用
特征:在使用一些系统优化软件对系统中的服务进行优化后,程序无法运行。
通行证:很多软件在安装时都会在系统服务中加入自己的服务,比如McAfee VirusScan就会加入“McAfee Framework”服务,如果在优化时不小心将这类服务停止或禁用了,那么依赖此服务才能正常工作的程序势必会受到影响,乃至无法运行。