近日,笔者一个朋友的计算机出现了一个奇怪现象:在Windows XP系统的命令行模式中运行所有命令都提示该命令不是内部或外部命令,也不能运行可执行文件和或批处理文件。
解决篇:
笔者认为是执行这些命令的可执行文件被误删造成的,进入系统安装目录的system32目录中发现ipconfig等可执行文件仍然存在,并没有被删除或改动的迹象。
第一步:在目录中直接运行这些可执行文件发现可以调出一个命令执行窗口,不过一闪即逝。由此可断定这些可执行文件没有问题,是完好无损的。
第一步:输入“CMD”命令进入命令行模式,然后进入“c:\windows\system32”目录运行ipconfig命令,发现一切正常,IP地址及DNS等信息全部显示出来了。
第四步:笔者通过“我的电脑→属性→高级”标签的“环境变量”按钮查看相关信息。发现“系统变量”中的Path项值为空,这应该是问题的关键,由于默认Path为空,所以在任意路径下运行诸如ipconfig的命令系统将无法找到该程序。双击path参数为其设置变量值“c:\windows\system32”。
第六步:确定后再在命令行模式中输入“ipconfig”就能显示出正确的信息了。
小提示:如果你希望设置多个默认路径可以采用诸如c:\windows\system32;c:\windows的形式,即中间用“;”隔开(如图1)。
思考篇:
分析本地故障原因就是因为环境变量中的默认路径被删除的结果,默认路径一经设置,当前系统如有程序运行时需要某些DLL或EXE文件,以及Active控件时就会到所有默认路径中去查找,如果在这些目录中查找到相应的程序则自动加载,查找不到则报告缺少某某文件的错误信息。
小知识:什么是环境变量?环境变量一般是指在操作系统中用来指定操作系统运行环境的一些参数,比如临时文件夹位置和系统文件夹位置等。这点有点类似于DOS时期的默认路径,当你运行某些程时序除了在当前文件夹中寻找外,还会到设置的默认路径中去查找。简单地说这里的“Path”就是一个变量,里面存储了一些常用命令所存放的目录路径。
很多朋友会在自己的计算机上安装双系统,例如C盘安装Windows 98,D盘安装Windows XP。可是某些软件往往只在Windows 98系统中安装,Windows XP系统中是无法正常使用的,比较麻烦却有效的方法是再安装一遍。当我们了解了环境变量中的用途后就可以很好解决双系统的软件共用问题。
小提示:为什么在Windows 98中安装了的软件在Windows XP下无法运行呢(绿色软件除外)?原因是安装软件时往往须要向系统目录中复制某些文件,而使用另外一个系统时会由于缺少这些文件而无法运行。因此,我们可以通过设置环境变量的方法来解决这个问题。
实例:通过设置默认路径解决双系统共用应用软件的问题
任务描述:
安装了双系统的本地计算机,C盘为Windows 98系统,安装了COOL 3D,D盘为Windows XP系统。希望在不重新安装软件的前提下可以在D盘系统中正常运行COOL 3D程序。
在Windows XP中直接找到COOL 3D的安装目录并运行其执行文件,会弹出报错对话框。
实现方法:
第一步:在Windows XP系统中的“我的电脑”上点鼠标右键选择“属性”。在系统属性窗口选择“高级”标签并按“环境变量”按钮。
第二步:将环境变量设置窗口中的系统变量里的Path值中添加如下目录:“c:\windows\system32;c:\windows\system;c:\windows”(不含引号)。
第三步:设置完毕后就可以顺利运行COOL 3D了,如果需要系统文件会自动到上面提到的C盘Windows 98相应目录去查找。
总结:
有些软件不用通过在环境变量中修改默认路径的方法就可以在D盘系统中正常启动,例如超级解霸等软件,因为它们并没有往系统目录中复制任何文件。另外修改默认路径法也并不是对所有软件有效,对于一些启动需要加载注册表中键值才能使用的软件,可能会出现提示要求输入注册码的窗口,输入正确数值后仍即可正常使用。如果通过修改默认路径法仍然无法启动软件的话,很有可能是因为Windows 98与Windows XP系统的某些DLL文件有区别而无法通用,这种情况只能在Windows XP系统中重新安装该软件。