让Pqmagic在Server版中运行

内容摘要

在一次磁盘扫描过程中,发现G:盘出现坏道,于是我打算用Pqmagic6.0中文版把G:区中的坏道隔离出来,以保证坏道不发生扩散。
  可是,当我进入到DOS模式下
文章正文
    在一次磁盘扫描过程中,发现G:盘出现坏道,于是我打算用Pqmagic6.0中文版把G:区中的坏道隔离出来,以保证坏道不发生扩散。

  可是,当我进入到DOS模式下启动Pqmagic时,程序并没有顺利地运行,而是出现了一个错误提示:“PartitionMagic无法在WindowsNT/Windows2000Server上运行”,点击确定之后程序自动退出了。这个问题是我所始料不及的,因为原先在公司的一台安装Windows2000的电脑上运行过Pqmagic,也没有出现过这种问题啊,但是我记得好像公司里安装的是Windows2000专业版,而我现在安装的却是Server版。从提示上看,的确是Pqmagic与Server版的Windows2000有不兼容现象,我初步判断可能是硬盘的引导与专业版略有不同,而造成了这种现象,于是我又用Windows98的启动盘引导至DOS下,再运行Pamagic,可是这次还是出现同样的错误提示。

  既然和引导程序无关,那么可能就是Server版在C:盘根目录下的某一个文件的存在(我的Windows2000安装在F:盘),使得Pqmagic无法运行,于是我在备份了C:盘根目录下的所有文件以后,逐个删除C:盘中的一些与Windows2000有关的文件,最后终于发现,只要Boot.ini文件存在,Pqmagic就无法正常运行,只要我把Boot.ini文件改名后再运行Pqmagic,就完全没有问题了。

  为了搞清楚这个问题,我在把硬盘上的Boot.ini文件备份以后,用公司电脑里的Windows2000专业版的Boot.ini文件覆盖了我的电脑中的同名文件,然后再又运行了Pqmagic,这次的确可以正常地运行,看来Pqmagic无法正常运行的原因就在于Boot.ini文件的内容,于是我对比了两个版本的Boot.ini文件,两者的不同点共有两处:即Windows2000的版本名称(“AdvancedServer”和“Professional”),我想Pqmagic会不会就是靠Boot.ini文件这一不同来判断Windows2000的版本,来决定是否运行,于是我把服务器版的Boot.ini文件中的“AdvancedServer”改成“Professional”,可是这次Pqmagic还是无法运行。最后发现专业版中的“=”的前后各有一个空格,而服务器版上却没有空格,于是我在服务器版的Boot.ini文件中加上了这两个空格,然后再运行Pqmagic,这次终于没再出现那个错误提示了。

  为了再次验证这个结论,我又把Windows2000专业版删除,然后再安装Server版,并将Boot.ini文件按上面的方法做出修改,修改以后完全不影响Windows2000的运行,Pqmagic也可以正常的使用,看来这个问题就这样圆满地解决了。至于这个有趣的问题为什么为出现,我估计是微软公司为了区分专业版和服务器版的,故意留下的记号,而Pqmagic就利用这个记号来让自己不在服务器版下运行,这可能是为了保证Server版稳定运行的一个方法。

代码注释
[!--zhushi--]

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!