IE7/8浏览器都不能显示PNG格式图片

方法一:重新注册pngfilt.dll文件。
这个方法是PNG格式开发商官方网站上的推荐方法之一,抱着试试的想法按网站推荐的方法试了,一试成功。方法如下:
使用 开始->运行,在运行输入框中输入 “regsvr32 c:windowssystem32pngfilt.dll”(然后点击确定)
或者运行regsvr32 c:windows" class="t_tag">windowssystem32pngfilt.dll
注意,这个pngfilt.dll在有的系统中是在 c:windowssystem中的,要自己查看一下这文件在哪里,根据自己的系统修改一下路径。如果在注册时出现 “已加载 c:windowssystem32pngfilt.dll,但没有找到DllRegisterSever 输入点。无法注册这个文件”,则表明这个文件可能损坏了,你要去别的机子去Copy一个好的过来。再进行一次注册。
方法二:注册表中“Internet Settings”值被更改
开始 -> 运行,在运行输入框中输入“Regedit”,到这个路径“HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionInternet SettingsAccepted Documents
”,在右边右键“新建”->“字符串值” 紧接着最大的数字命名,我这里是3,故命名为4,并赋值为“image/png”。
方法三:改注册表中“MIME”项
查看 HKEY_CLASSES_ROOTMIMEDatabaseContent Typeimage/png是否存在或者有权限查看,否则修改权限或者从别人的电脑上导入一个过来。
回到Regedit,发现MIME键权限是完全访问的,并没有任何问题。可能是缺少某些键值。
从别的可以正常显示PNG图像的电脑上导入一份MIME项,把自己的MIME整项删掉,直接导入他的注册表文件。所有PNG图像正常显示,问题解决。
解决之后现在image/png里的两个重要健值
数值名称:
Extension
数值数据:
.png
数值名称:
Image Filter CLSID
数值数据:
{A3CCEDF7-2DE2-11D0-86F4-00A0C913F750}
方法四:改注册表“INTERNET EXPLORER/EMBEDEXTNTOCLSIDMAPPINGS”项
你可在:
1.在WINDOWS开始/执行打入REGEDIT
2.到HKEY_LOCAL_MACHINE/SOFTWARE/MICROSOFT/INTERNET EXPLORER/EMBEDEXTNTOCLSIDMAPPINGS/.PNG
看存不存在.
3.假若不存在.
MOUSE点它的上一层,也就是EMBEDEXTNTOCLSIDMAPPINGS
4.然后按MOUSE右键新增机码,输入.PNG
5.然后MOUSE在.PNG反白,
按MOUSE右键新增字串值(预设值)
6.对著预设值按MOUSE右键,选择上面的"修改",
7.输入
clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B
8.按确定.
现在很多都是由quicktime文件导致的莫名错误,而且abobe公司的软件已经包含有这个quicktime.dll文件了,所以如果你机器上装有adobe的软件的话,你要小心了,不要随便删除它的软件。
在我遇到这个问题时,所使用的是IE8浏览器,解决方法是从另一台正常的电脑,使用的浏览器为IE7(IE8应该也可)重新拷贝了一份pngfilt.dll来重新注册。不过这里需要注意的是:在替换完system32目录下的pngfilt.dll后,还要替换system32dllcache文件夹下的,否则系统会自动还原而替换失败。 system32dllcache文件夹是隐藏的。

原文地址:https://www.cnblogs.com/BlogNetSpace/p/3237639.html