方法一:重新注冊pngfilt.dll文件。
這個方法是PNG格式開發商官方網站上的推薦方法之一,抱着試試的想法按網站推薦的方法試了,一試成功。方法如下:
使用 開始->運行,在運行輸入框中輸入 “regsvr32 c:\windows\system32\pngfilt.dll”(然后點擊確定)
或者運行regsvr32 c:\windows" class="t_tag">windows\system32\pngfilt.dll
注意,這個pngfilt.dll在有的系統中是在 c:\windows\system中的,要自己查看一下這文件在哪里,根據自己的系統修改一下路徑。如果在注冊時出現 “已加載 c:\windows\system32\pngfilt.dll,但沒有找到DllRegisterSever 輸入點。無法注冊這個文件”,則表明這個文件可能損壞了,你要去別的機子去Copy一個好的過來。再進行一次注冊。
方法二:注冊表中“Internet Settings”值被更改
開始 -> 運行,在運行輸入框中輸入“Regedit”,到這個路徑“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Accepted Documents
”,在右邊右鍵“新建”->“字符串值” 緊接着最大的數字命名,我這里是3,故命名為4,並賦值為“image/png”。
方法三:改注冊表中“MIME”項
查看 HKEY_CLASSES_ROOT\MIME\Database\Content Type\image/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后,還要替換system32\dllcache文件夾下的,否則系統會自動還原而替換失敗。 system32\dllcache文件夾是隱藏的。