我的工作笔记本型号是DELL D630,安装的是2条1G DDR2-667内存,Win7系统。前些天换了2条DDR2 Kingston PC2-6400 (400 MHz)内存。在之前我其实已经知晓该本子最大支持内存型号为 DDR2-667,但这次更新内存后一看,却是给安装了2条DDR2-800的内存,DDR2-800是向下兼容一级的,也就是说兼容DDR2-667的,所以不会在意。
随后将之前的Win2003撤掉,准备换Windows7。Win7安装的十分顺利,感觉一切正常,可是在随后的安装开发工具的时候,总是报找不到文件或是说cab文件已损坏什么的,开始还以为是系统的原因,但随后感觉不正常,第一次安装SQL2005到90%左右就提示找不到东西了,我用的是ISO文件,使用PowerISO虚拟光驱加载的,以前可从来没有这种问题啊。然后从同事那要了一个SQL2005的安装文件,下意识的用HashMyFiles校验了下MD5,发现与官方一致,再校验一把我之前安装的ISO,发现竟然和同事给的这个不一样。顿时起了疑惑,一样的版本,一样一样的MSDN版本,怎么会有MD5的差异?想到笔记本这个SQL2005是从台式机上拷贝来的,晚上回家又校验了家里台式机的SQL2005 ISO文件,发现台式机的这个文件的MD5值和同事给的是一样的,这是怎么回事??? 我只是把台式机的这个文件拷到笔记本上面而已,内容怎么会变化了??
于是做了一个实验:再次从台式机拷贝这个镜像文件到笔记本,拷贝完成又做了一次MD5校验,结果是不一致!这下我可惊呆了,用了这么多年的电脑,从没遇见这种事情,文件从台式机拷到笔记本,文件内容的哈希值竟然变了,真是怪异啊。怪异归怪异,还得找到原因所在。
在百度上搜索“文件 复制 MD5 改变”,竟然有很多人遇见了这个怪问题,大都有说是内存条导致的,而且多数是安装了2根内存,复制大文件出现这情况。有的人是减少一条内存就好了,有点人是因为安装了较高频率的内存到主板(这个和我的情况类似,DDR2-800安装到只支持DDR2-667的主板)。我第一想到的是要撤一条内存,但撤掉1条就只有2G了,用起来速度肯定就不行,十分纠结。于是中午午休也没睡着,开发工具安装不上,工作的事情也做不了。想着想着,可能是神在指示吧,我想到了主板的BIOS是不是可以更新一下呢?于是打起精神,打开CPU-Z看了下主板的BIOS版本,是V07版,打开DELL网站,在D630的服务页面发现最新的D630 BIOS 版本号是V17,V17比V07还是高出不少,升级就升级吧。
下载了V17的BIOS文件,直接在Win7上刷进主板,提示要重启;重启后在D630的开机界面出现了一个更新BIOS的界面,大约10几秒就完成了。再进入Win7,CPU-Z显示版本V17,升级成功。于是再复制一个大文件后做一次MD5校验,嘿嘿,这下竟然对了,一次不可靠,反复换了几个2G到4G多的大文件,反复复制又校验,全都正确了,再没有出现之前复制一次失败一次的情况,后又反复测试了十几遍,都没一点问题,就这样完美解决了复制大文件后文件损坏的问题。
一次成功的经验,这里写出来,如果你也有遇到同样的问题,也不妨看看主板的BIOS是否可以升级,如果还是不行,那就只好更好与主板相适应的内存了。
(另注:若是主板可以调节内存频率,可以先试试降低内存使用频率,说不定也可以解决。)
标签:文件,台式机,DDR2,BIOS,Windows7,内存,一法,MD5 From: https://blog.51cto.com/u_8260968/6007442