今天被折腾死了,先是昨天凌晨发现chrome发生问题,所有的网页都打不开。我一开始以为是我电脑WIFI的问题,就想第二天再说,说不定重启一下就会好。不是说重启是大部分问题的解决方法嘛,但是这次没用。今天上午打开电脑还是这样,但我发现QQ能上,于是我开了IE,IE竟然能用!我知道这不是网络问题了,于是我把chrome卸载了,但装的时候又出现了一个新的问题
“无法启动此程序 因为计算机中丢失MSVCR71.dll。”
于是我开始解决这个问题。先上网查了一下,MSVCR71.dll是位于system32下的一个dll文件,虽然没讲清楚他到底是干嘛的,就说他是调用公共函数什么的,但少了这个文件会有很多软件打不开,所以是个比较重要的文件。因为机子里刚刚布置完ASP.NET的开发环境,过程也比较痛苦,装了好几遍,实在不想重装系统后再来一次。所以一开始以为和以前遇到的缺少文件一样,从网上下一个放回去就行了。结果下了好几个都不行。在折腾了一个小时后,我出去吃了个饭顺便打了会儿好久没玩的战神3。等自己冷静下来后我又回到工作室,这次我打开百度后一条一条看下来,一条一条试过来。现在终于解决了。因为我的系统是64位的系统,所以不光是system32,在c:windows 文件夹下,还有一个sysWOW64文件夹,wow64子系统是为了让32位的应用程序可以不经过任何修改就能运行在64位的系统上。把文件放入这sysWOW64这个文件夹里后重启。结果系统终于不报错了。chrome成功安装完成。打开chrome,点开最喜欢的bilibili。果然,还是打不开。(TAT)
我失去方向,不知道应该怎么办,然后突然想起来,我试的都是百度和b站。那么本地的网站会怎么样?然后我从IE上随便点了个网页下载下来用chrome打开,OK没问题。然后我只能继续百度,网上说不只是chrome,webkit内核的浏览器都这样。原因是该服务依赖的TCP/IP协议有问题。这就能解释为什么本地网站可以打开但网上的却不行。其实在卸载前chrome的错误是找不到网站,提示我可能是DNS有问题。其实是TCP/IP协议出了问题,chrome理解不了。以下是最终的解决办法。
第一步:进入regedit删除
HKEY_LOCAL_MACHINESystemCurrentControlSetServicesWinsock HKEY_LOCAL_MACHINESystemCurrentControlSetServicesWinsock2
这两个键。
第二步: 找到文件C:windowsinf
ettcpip.inf 此文件为tcp/ip协议文件
第三步:进入适配器设置,右键本地连接,属性
选择TCP/IPv6->安装->协议->添加->从磁盘安装->找到nettcpip.inf,确定后选择“TCP/IPv6”。IPv4相同,最后一步先IPv4就行了。
然后再打开chrome,终于打开了!
现在虽然问题解决了,但还是不知道问题出在哪儿。也就是说同样的问题可能会再次发生。有知道的大大们告诉一下,谢谢啦。