• 2009年08月06日

    解决浏览器无法显示png图片及png验证码的问题 - [软的技术]

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://aisinvon.blogbus.com/logs/43611732.html

    这2天不知怎么搞的,作出来的网页的图片只要是png格式,都不能显示啦,而且网站的验证码也不能显示,但是在火狐里面完全正常。上午搜索,得到了很多结果,但是都没有很好地解决问题,终于在上面的网址里得到了答案。

    网页上的验证码一般采用两种图片格式:

    一、.xbm图片
    (不过因为Windows XP SP2操作系统在默认状态下是不支持该图片格式的,所以现在采用这种图片做验证码的网站很少了)
    解决办法为:运行Regedit命令打开注册表编辑器,依次定位到
    “HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Internet Explorer/Security”,
    在窗口右边新建一个名为"BlockXBM"的REG_DWORD值,将其值设置为"0"(十六进制值)。之后重新启动机器,
    则验证码的图片就可以看到了。

    二、PNG图片:

    解决办法1:开始->运行,在运行输入框中输入 “regsvr32 c:\windows\system32\pngfilt.dll”(然后点击确定)
    如果在注册时出现 “已加载c:\windows\system32\pngfilt.dll,但没有找到DllRegisterSever 输入点,无法注册这个文件”,
    则表明这个文件可能损坏了,你要去别的机子去Copy一个好的过来,再进行一次注册。

    解决办法2:打开注册表,到这个路径
    “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Accepted Documents”,
    在右边右键“新建”->“字符串值” 紧接着最大的数字命名,我这里是3,故命名为4,并赋值为“image/png”。

    解决办法3:把别人机器上的“HKEY_CLASSES_ROOT\MIME\Database\Content Type”下的内容倒出,在自己的机器上倒入。

    解决办法4:找到“HKEY_LOCAL_MACHINE/SOFTWARE/MICROSOFT/INTERNET EXPLORER/EMBEDEXTNTOCLSIDMAPPINGS/”
    看看这个项目下面有没有.png。如果没有新建项目.png,然后把项目.png下面的"默认"键的键值修改为
    “02BF25D5-8C17-4B23-BC80-D3488ABDDC6B”。如果有.png项,看看"默认"键的键值是否同上,不同就修改一下,
    保存后关闭regedit,重启浏览器,这时候png图片就应该能显示了。
    上面的办法,如果一种不行就再进行下一种方法,每使用一种方法,就关闭IE,重启一下,
    不然就算好了,你也不知道。
     
    其中,重启ie是很重要的一步,我在解决问题的过程中就是因为没有重启ie,所以以为问题还没解决,差点想重装成ie8试试。pngfilt.dll下载地址:http://www.uushare.com/user/aisinvon2005/file/1832619。


    收藏到:Del.icio.us




    评论

  • 牛X。
    aisin von回复金浩说:
    haoge的评论简短精悍
    2009-08-07 12:33:25