Can't see PNG images !

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

I have Windows XP Pro with SP2, and all the updates installed.
I don't know what's happend, but i can't see PNG image anymore...!
I've tryed to copy and re-register pngfilt.dll in system32, but it is still
not working !
Why ? Help me !...
 
On that site i see gifs and jpgs. Where on the site I look on the front
page and on the iconfactory logo, but I do not see any pngs
 
This won't help much but I have suffered from the non-visible .png images on
my laptop (note - NOT on my workstation!) for 6 months. Both machines are
Windows XP SP2 with IE6 SP2 and all patches to date - 15Jul2005. Only a
problem with .png - all other image formats show correctly

There are no other instances of this problem reported on the web except for
3 separate instances of this same problem here on the IE community newsgroup
so I know this is a genuine issue.

I notice there is no useful response from Microsoft!

My vesion of pngfilt.dll Version 6.00.2900.2668 (xpsp_sp2_gdr.050430-1553)

Example of problem can be seen at
http://newsvote.bbc.co.uk/1/shared/fds/hi/business/market_data/overview/default.stm

Microsoft Security Bulletin MS05-025
Cumulative Security Update for Internet Explorer (883939)

Disable PNG image rendering in Internet Explorer

First scenario:

To unregister Pngfilt.dll, follow these steps:

1. Click Start, click Run, type "regsvr32 /u pngfilt.dll" (without the
quotation marks), and then click OK.

2. A dialog box appears to confirm that the unregistration process has
succeeded. Click OK to close the dialog box.

3. Close Internet Explorer, and reopen it for the changes to take effect.

To re-register Pngfilt.dll, use "regsvr32 pngfilt.dll" (without the
quotation marks).

I have processed unreg and then rereg many times - no effect

Second scenario:

Block PNG image rendering in Internet Explorer by using a Software
Restriction Policy

To block PNG image rendering in Internet Explorer you can create a Software
Restriction Policy. To create this policy, use a registry script or create a
Group Policy setting to block the loading of the Pngfilt.dll.
Note Using Registry Editor incorrectly can cause serious problems that may
require you to reinstall your operating system. Microsoft cannot guarantee
that problems resulting from the incorrect use of Registry Editor can be
solved. Use Registry Editor at your own risk. For information about how to
edit the registry, view the "Changing Keys And Values" Help topic in Registry
Editor (Regedit.exe) or view the "Add and Delete Information in the Registry"
and "Edit Registry Data" Help topics in Regedt32.exe.

We recommend that you back up the registry before you edit it.

Use the following .reg file to un-register the PNG image rendering library
in Internet Explorer. You can copy the following text, paste it into a text
editor such as Notepad, and then save the file with the .reg file name
extension.

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Safer\CodeIdentifiers]

"TransparentEnabled"=dword:00000002

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Safer\CodeIdentifiers\0\Paths\{09687f8a-0ca9-4639-b294-a3f5b2be8fc6}]

"LastModified"=hex(b):50,09,1f,b1,04,4a,c5,01

"Description"="Block pngfilt.dll"

"SaferFlags"=dword:00000000

"ItemData"=hex(2):25,00,77,00,69,00,6e,00,64,00,69,00,72,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,70,00,6e,00,67,00,66,00,69,00,6c,00,74,00,2e,00,64,00,6c,00,6c,00,00,00

I have examined my registry in detail and I have no trace of any of the
entries above. It appears that Microsoft has got themselves a real problem
over .png images and they have 'stuck their head in the sand' and hope that
the problem will 'go away' when they release V7!
 
....


Are you saying that you don't see any of the graphs (e.g. getting Red-X)
or is there some other symptom about them?

Use the Privacy Report (Alt-V,v) and see if you can see them listed
in it. Hint: you will have to keep dragging the Cookie column out of
the way because they are long URLs.

Also use the TIF Viewer (Alt-T,O,Alt-S,V)
- by Details, sorted by Last Accessed (Alt-V,D Alt-V,I,Last Accessed)
and find them in there.

When you find one press Enter on it. Ignore the warning.
What do you see?

Capture the TIF path from the Address bar (Alt-d,Ctrl-c)
and find your sample file's cache name. (Alt-Enter)
Make a note of the Cache name: (I couldn't find any way
to capture it so you're going to have to type some of it
some time.) or just leave the Properties page open
for future reference.

Next switch to a cmd window. (The captured TIF path
should still be in the Clipboard.)

Type: cd /d
Press Space and paste in the captured path (Alt-Space,E,P)
Press Enter.

Find the cached .png file by then entering:
dir/s *intraday*.png
(or however much of the cache'd name you want to enter.)

Construct the full filename (e.g. in an IE Address bar)
by copying and pasting both the Directory name
(appended by a backslash) and the cached filename.
Press Enter. What happens?

FWIW that launches Windows Picture and Fax Viewer (in XPsp2)

If that doesn't happen for you perhaps you have changed
your filetype or associations for png.

To check on that possibility switch back to your cmd window
and enter:

assoc | find /i "png"
and
ftype | find /i "png"

Here are mine:
<examples>
..png=pngfile
pngfile=rundll32.exe F:\WINDOWS\system32\shimgvw.dll,ImageView_Fullscreen %1
</examples>

To restore that default (in XP) Run... (e.g. press Win-R and Enter:)
regsvr32 /i shimgvw.dll

Note: this also restores other filetypes too. So you might want
to check on these first:

<example>
F:\Documents and Settings\Rob\Local Settings\Temporary Internet Files>ftype | find /i "imageview"
emffile=rundll32.exe F:\WINDOWS\system32\shimgvw.dll,ImageView_Fullscreen %1
giffile=rundll32.exe F:\WINDOWS\system32\shimgvw.dll,ImageView_Fullscreen %1
jpegfile=rundll32.exe F:\WINDOWS\system32\shimgvw.dll,ImageView_Fullscreen %1
Paint.Picture=rundll32.exe F:\WINDOWS\system32\shimgvw.dll,ImageView_Fullscreen %1
pjpegfile=rundll32.exe F:\WINDOWS\system32\shimgvw.dll,ImageView_Fullscreen %1
pngfile=rundll32.exe F:\WINDOWS\system32\shimgvw.dll,ImageView_Fullscreen %1
TIFImage.Document=rundll32.exe F:\WINDOWS\system32\shimgvw.dll,ImageView_Fullscreen %1
wmffile=rundll32.exe F:\WINDOWS\system32\shimgvw.dll,ImageView_Fullscreen %1
</example>


HTH

Robert Aldwinckle
---
 
Hi, I have posted the problem one month ago.
Till now, I cannot solve this problem.
Your solution also cannot work.
Anyway, thank you.
 
xueyuhanlang said:
Hi, I have posted the problem one month ago.
Till now, I cannot solve this problem.
Your solution also cannot work.

My post was mostly a request for diagnostics and a more precise
symptom description from Thomas (who is not OP either.)

To avoid any more confusion in this thread perhaps you could reply
in your own thread with your results to the tests I suggested.

Since you are using the web interface to newsgroups it is easy
for you to find that old thread by searching for just your name:

http://www.microsoft.com/communitie...&p=1&tid=ba42866c-a757-4a3f-a3b8-a045857c547f


HTH

Robert
---
 
Have been away for a few days and other diversion but have worked through
(some) of your requests...

I can't see any graphs (all .png) but I see all .gif on thee BBC page. I
don't have a problem with .jpg or any other image file type.

If I run 'regsvr32 /i shimgvw.dll' I receive 'DllRegisterServer and
DllInstall in shimgvw.dll succeeded' but it doesn't do anything to my
filetype or associations!

When I run assoc and ftype I receive following:
For .png files I have:
C:\>assoc | find /i "png"
..png=pngfile

C:\>ftype | find /i "png"
pngfile="C:\Program Files\Common Files\Microsoft Shared\PhotoEd\PHOTOED.EXE"
"%1"

For .gif files I have:
C:\>assoc | find /i "gif"
..gif=giffile

C:\>ftype | find /i "gif"
giffile="C:\Program Files\Common Files\Microsoft Shared\PhotoEd\PHOTOED.EXE"
"%1"

My results for following command 'C:\>ftype | find /i "imageview"' are:

emffile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
Paint.Picture=rundll32.exe
C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
pjpegfile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
TIFImage.Document=rundll32.exe
C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
wmffile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1

Now I see that I have missing from my list, compared to yours, entries for
giffile and pngfile but what is a mystery to me is that I can view .gif OK
but NOT .png. If this really is my problem how do I recover the missing
entries for giffile and pngfile under 'imageview'???
 
Thomas,

..PNG file association should not matter AFAIK. BTW, it looks like there is
another module involved for rendering the .PNG images in IE. See if this
command helps, from Start-Run:

regsvr32 imgutil.dll

If you need to reset the .PNG association to defaults, you need to edit the
registry. Alternately download my utility from here (
http://windowsxp.mvps.org/utils/imgeditor.zip ) unzip and run it. Select
"PNG" from the list, and click Repair associations.
 
Ramesh,

I have downloaded the image association repair utility, ran it and
'repaired' .gif and .png files so I now have following configuration:

C:\>ftype | find /i "imageview"
emffile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
giffile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
Paint.Picture=rundll32.exe
C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
pjpegfile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
pngfile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
TIFImage.Document=rundll32.exe
C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
wmffile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1

C:\>ftype | find /i "png"
pngfile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1

C:\>assoc | find /i "png"
..png=pngfile

C:\>ftype | find /i "gif"
giffile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1

C:\>assoc | find /i "gif"
..gif=giffile

Now this looks as though the gifile and pngfile entries have reappeared
but... I can still see .gif and .jpg images in IE6 but NOT .png! Where do
we go next?
 
Thomas,

What about the regsvr32 command-line.

--
Ramesh, Windows XP MVP
http://windowsxp.mvps.org


Thomas D Scotland said:
Ramesh,

I have downloaded the image association repair utility, ran it and
'repaired' .gif and .png files so I now have following configuration:

C:\>ftype | find /i "imageview"
emffile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
giffile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
Paint.Picture=rundll32.exe
C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
pjpegfile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen
%1
pngfile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
TIFImage.Document=rundll32.exe
C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
wmffile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1

C:\>ftype | find /i "png"
pngfile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1

C:\>assoc | find /i "png"
.png=pngfile

C:\>ftype | find /i "gif"
giffile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1

C:\>assoc | find /i "gif"
.gif=giffile

Now this looks as though the gifile and pngfile entries have reappeared
but... I can still see .gif and .jpg images in IE6 but NOT .png! Where
do
we go next?
 
Thomas D Scotland said:
Have been away for a few days and other diversion but have worked through
(some) of your requests...

I can't see any graphs (all .png) but I see all .gif on thee BBC page. I
don't have a problem with .jpg or any other image file type.

If I run 'regsvr32 /i shimgvw.dll' I receive 'DllRegisterServer and
DllInstall in shimgvw.dll succeeded' but it doesn't do anything to my
filetype or associations!

When I run assoc and ftype I receive following:
For .png files I have:
C:\>assoc | find /i "png"
.png=pngfile

C:\>ftype | find /i "png"
pngfile="C:\Program Files\Common Files\Microsoft Shared\PhotoEd\PHOTOED.EXE"
"%1"

For .gif files I have:
C:\>assoc | find /i "gif"
.gif=giffile

C:\>ftype | find /i "gif"
giffile="C:\Program Files\Common Files\Microsoft Shared\PhotoEd\PHOTOED.EXE"
"%1"

My results for following command 'C:\>ftype | find /i "imageview"' are:

emffile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
Paint.Picture=rundll32.exe
C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
pjpegfile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
TIFImage.Document=rundll32.exe
C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
wmffile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1

Now I see that I have missing from my list, compared to yours, entries for
giffile and pngfile but what is a mystery to me is that I can view .gif OK
but NOT .png. If this really is my problem how do I recover the missing
entries for giffile and pngfile under 'imageview'???


Thomas,

I think that those file type associations only apply when you open
a local file having that extension. That is why I asked you to test
using the TIF viewer. Your observations from what happens when
you open a web file versus a local file might be useful clues.
I was mostly trying to get you to explore the scope of the symptom
and related issues.

The regsvr32 /i shimgvw.dll command has in the past restored
defaults and helped make .tiff files (specifically) renderable by IE.
I'm not sure why it wouldn't have the same effect with .png files.

Perhaps you should have tried uninstalling your other app instead
of overriding it?

BTW is your other app also on your other machine? <eg>


HTH

Robert
---
 
Robert,
Have more time so will answer your questions by quoting them then with my
answer in {... ...}

Are you saying that you don't see any of the graphs (e.g. getting Red-X)
or is there some other symptom about them?
{a square with red x in middle}

Use the Privacy Report (Alt-V,v) and see if you can see them listed
in it. Hint: you will have to keep dragging the Cookie column out of
the way because they are long URLs.

Also use the TIF Viewer (Alt-T,O,Alt-S,V)
- by Details, sorted by Last Accessed (Alt-V,D Alt-V,I,Last Accessed)
and find them in there.

When you find one press Enter on it. Ignore the warning.
What do you see?
{new IE page opens with same square and red x}

Capture the TIF path from the Address bar (Alt-d,Ctrl-c)
and find your sample file's cache name. (Alt-Enter)
Make a note of the Cache name: (I couldn't find any way
to capture it so you're going to have to type some of it
some time.) or just leave the Properties page open
for future reference.

Next switch to a cmd window. (The captured TIF path
should still be in the Clipboard.)

Type: cd /d
Press Space and paste in the captured path (Alt-Space,E,P)
Press Enter.
{path from address bar is in form
file:///D:/Temp/Administrator/Temporary%20Internet%20Files. When I paste
this after 'cd /d ' in cmd window then enter I receive a path not found
error. I have to edit path to 'D:/Temp/Administrator/Temporary Internet
Files' then enter this after 'cd /d ' to switch to the TIF folder}

Find the cached .png file by then entering:
dir/s *intraday*.png
(or however much of the cache'd name you want to enter.)
{search found (sub)folder 'D:\Temp\Administrator\Temporary Internet
Files\Content.IE5\CZJ3IWT5' containing file
'3+bbc-thumbnail_thick-line+intraday[1].png'}

Construct the full filename (e.g. in an IE Address bar)
by copying and pasting both the Directory name
(appended by a backslash) and the cached filename.
Press Enter. What happens?
{pasting path and filename, separated by \, into Explorer then clicking <go>
immediately brought up Windows Picture and Fax Viewer showing the graph
correctly!}

Perhaps you should have tried uninstalling your other app instead
of overriding it?
{I am not sure what you mean by uninstalling 'other app'. I can view and/or
manipulate png files using Imaging for Windows, Microsoft Photo Editor,
QuickTime, ACDSee and Paint Shop Pro V8.1. Which, if any, is causing the
problem? I use all these, for different functions, so don't wish to remove
(except Photo Editor) any}

BTW is your other app also on your other machine?
{So that I can walk out of my house and do exactly the same work on the road
as I do at home the laptop is configured to hold all data in the CSC of
offline files and all applications on the workstation are available on the
laptop. Both laptop and workstation are kept up to identical latest version
status. Workstation shows png correctly. end}
 
Thomas D Scotland said:
Robert,
Have more time so will answer your questions by quoting them then with my
answer in {... ...}

Are you saying that you don't see any of the graphs (e.g. getting Red-X)
or is there some other symptom about them?
{a square with red x in middle}

Use the Privacy Report (Alt-V,v) and see if you can see them listed
in it. Hint: you will have to keep dragging the Cookie column out of
the way because they are long URLs.

Also use the TIF Viewer (Alt-T,O,Alt-S,V)
- by Details, sorted by Last Accessed (Alt-V,D Alt-V,I,Last Accessed)
and find them in there.

When you find one press Enter on it.

Oops. Sorry. I guess I meant. Shift-Enter.
(leaving the the Full path to the TIF in the original Explorer window.)

Ignore the warning.
What do you see?
{new IE page opens with same square and red x}

Ah. I should also have said switch back to the TIF viewer
or close the current window I guess...

Capture the TIF path from the Address bar (Alt-d,Ctrl-c)
and find your sample file's cache name. (Alt-Enter)

See? I was still assuming you were looking at the TIF viewer...

Make a note of the Cache name: (I couldn't find any way
to capture it so you're going to have to type some of it
some time.) or just leave the Properties page open
for future reference.

Next switch to a cmd window. (The captured TIF path
should still be in the Clipboard.)

Type: cd /d
Press Space and paste in the captured path (Alt-Space,E,P)
Press Enter.
{path from address bar is in form
file:///D:/Temp/Administrator/Temporary%20Internet%20Files.

Not for me. Did you capture it from the Address bar of the TIF viewer
or from the Address bar of the Red-X window?

When I paste
this after 'cd /d ' in cmd window then enter I receive a path not found
error. I have to edit path to 'D:/Temp/Administrator/Temporary Internet
Files' then enter this after 'cd /d ' to switch to the TIF folder}

I do this paste a lot and probably overlook some of the switching details.
(It's really a lot easier to perform than to describe. ;} )

Find the cached .png file by then entering:
dir/s *intraday*.png
(or however much of the cache'd name you want to enter.)
{search found (sub)folder 'D:\Temp\Administrator\Temporary Internet
Files\Content.IE5\CZJ3IWT5' containing file
'3+bbc-thumbnail_thick-line+intraday[1].png'}

Construct the full filename (e.g. in an IE Address bar)
by copying and pasting both the Directory name
(appended by a backslash) and the cached filename.
Press Enter. What happens?
{pasting path and filename, separated by \, into Explorer then clicking <go>
immediately brought up Windows Picture and Fax Viewer showing the graph
correctly!}

Great! That shows that the local file association is working but the
web file association is not for some reason. Possibly MIME related?
You could try disabling MIME sniffing (in Security Settings, Custom Level...
Miscellaneous section)
Disable: Open files based on content, not file extension

Note: I think that this may be one of the many undocumented (requires restart)
options. I would wait until all IE windows are closed (iexplore.exe not
an active process) before trying to test this change.

Note this is not a permanent change I am suggesting, just a temporary
one for a test.

BTW I wasn't aware of imgutil.dll. Looks like it would be involved with
the MIME sniffing at least. I suppose I could test both cases with
RegMon and FileMon some time. Or perhaps Ramesh will clarify
for us.

Perhaps you should have tried uninstalling your other app instead
of overriding it?
{I am not sure what you mean by uninstalling 'other app'. I can view and/or
manipulate png files using Imaging for Windows, Microsoft Photo Editor,
QuickTime, ACDSee and Paint Shop Pro V8.1. Which, if any, is causing the
problem? I use all these, for different functions, so don't wish to remove
(except Photo Editor) any}

That's the one I meant. It had evidently taken over the local file association
so I was imagining that it might have affected the web file association too.
(Purely speculative and just something else that I would try, to test the scope
of the symptom.)


Good luck

Robert
---
 
Robert,

Here goes with today's investigation.... Todays comments are in following
{{.. ..}}

{{Tried MIME sniffing switch but no change. After changing these settings I
shut down IE & restarted then shut the machine down and rebooted and still no
change. Now the reference to MIME settings has set me thinking... It
shouldn't be necessary to remove any application. I have changed file
extension to application associations many many times over the years on both
my workstation and laptop without any effect on the IE rendering. I am
convinced the application association issue is a diversion. The assoc &
ftype configurations for both .gif and .png filetypes are exactly the same...

C:\>assoc | find /i "gif"
..gif=giffile

C:\>assoc | find /i "png"
..png=pngfile

C:\>ftype | find /i "gif"
giffile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1

C:\>ftype | find /i "png"
pngfile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1

C:\>ftype | find /i "imageview"
emffile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
giffile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
jpegfile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
Paint.Picture=rundll32.exe
C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
pjpegfile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
pngfile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
TIFImage.Document=rundll32.exe
C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1
wmffile=rundll32.exe C:\WINNT\system32\shimgvw.dll,ImageView_Fullscreen %1

.... and they are the same for jpg filetype. I can view the TIF cache of
either .gif, jpg or .png in any image viewing application without any
problem. The issue is clearly that when IE requires the viewer to render a
..gif or jpg it can execute the request but when IE requires the viewer to
render a .png it cannot excecute this command. Somewhere the
command/execution 'chain' for an IE .png rendering request is 'broken' and my
guess is this problem must lie somewhere within the registry. Now I have
noticed your references to MIME encoding/decoding so I did some searching
within the registry. Working on the premise that as .gif & .jpg are rendered
but NOT .png I am searching for common patterns between .gif & .jpg but
differences with .png. If I look into the '\MIME\Database\Content Type' tree
I find entries for image/gif, image/jpg & image/png. What is significant is
that the .png entry is the oddball. I have exported the relevant sections
and included them below...

Key Name: HKEY_CLASSES_ROOT\MIME\Database\Content Type\image/gif
Class Name: <NO CLASS>
Last Write Time: 04/04/2005 - 12:07 AM
Value 0
Name: CLSID
Type: REG_SZ
Data: {25336920-03F9-11cf-8FD0-00AA00686F13}

Value 1
Name: Extension
Type: REG_SZ
Data: .gif

Value 2
Name: Image Filter CLSID
Type: REG_SZ
Data: {607fd4e8-0a03-11d1-ab1d-00c04fc9b304}

Value 3
Name: AutoplayContentTypeHandler
Type: REG_SZ
Data: PicturesContentHandler


Key Name: HKEY_CLASSES_ROOT\MIME\Database\Content Type\image/gif\Bits
Class Name: <NO CLASS>
Last Write Time: 12/07/2004 - 10:49 AM
Value 0
Name: 0
Type: REG_BINARY
Data:
00000000 04 00 00 00 ff ff ff ff - 47 49 46 38 ....ÿÿÿÿGIF8

Key Name: HKEY_CLASSES_ROOT\MIME\Database\Content Type\image/jpeg
Class Name: <NO CLASS>
Last Write Time: 04/04/2005 - 12:07 AM
Value 0
Name: CLSID
Type: REG_SZ
Data: {25336920-03F9-11cf-8FD0-00AA00686F13}

Value 1
Name: Extension
Type: REG_SZ
Data: .jpg

Value 2
Name: Image Filter CLSID
Type: REG_SZ
Data: {607fd4e8-0a03-11d1-ab1d-00c04fc9b304}

Value 3
Name: AutoplayContentTypeHandler
Type: REG_SZ
Data: PicturesContentHandler


Key Name: HKEY_CLASSES_ROOT\MIME\Database\Content
Type\image/jpeg\Bits
Class Name: <NO CLASS>
Last Write Time: 12/07/2004 - 10:49 AM
Value 0
Name: 0
Type: REG_BINARY
Data:
00000000 02 00 00 00 ff ff ff d8 - ....ÿÿÿØ

Key Name: HKEY_CLASSES_ROOT\MIME\Database\Content Type\image/png
Class Name: <NO CLASS>
Last Write Time: 22/07/2005 - 09:16 AM
Value 0
Name: Extension
Type: REG_SZ
Data: .png

Value 1
Name: Image Filter CLSID
Type: REG_SZ
Data: {A3CCEDF7-2DE2-11D0-86F4-00A0C913F750}


Key Name: HKEY_CLASSES_ROOT\MIME\Database\Content Type\image/png\Bits
Class Name: <NO CLASS>
Last Write Time: 22/07/2005 - 09:16 AM
Value 0
Name: 0
Type: REG_BINARY
Data:
00000000 08 00 00 00 ff ff ff ff - ff ff ff ff 89 50 4e 47 ....ÿÿÿÿÿÿÿÿ.PNG
00000010 0d 0a 1a 0a ....


.... Note that when comparing .gif & .jpg to .png there are two 'Value'
enties 'missing' from the .png section! They are 'CLSID' &
'AutoplayContentTypeHandler'. I am only guessing here but I would not expect
..png images to be handled in a different way to .gif or .jpg? I have tried
to check all !!! occurances of .gif, .jpg & .png entries and compare them for
similarities v. differencies and it is the above MIME entries that are the
most striking. Food for thought?? Unfortunately I am away from home
otherwise I would have immediately compared these enties on this laptop with
my workstation which works correctly with gif, jpg & pngs.}}

Robert Aldwinckle said:
Thomas D Scotland said:
Robert,
Have more time so will answer your questions by quoting them then with my
answer in {... ...}

Are you saying that you don't see any of the graphs (e.g. getting Red-X)
or is there some other symptom about them?
{a square with red x in middle}

Use the Privacy Report (Alt-V,v) and see if you can see them listed
in it. Hint: you will have to keep dragging the Cookie column out of
the way because they are long URLs.

Also use the TIF Viewer (Alt-T,O,Alt-S,V)
- by Details, sorted by Last Accessed (Alt-V,D Alt-V,I,Last Accessed)
and find them in there.

When you find one press Enter on it.

Oops. Sorry. I guess I meant. Shift-Enter.
(leaving the the Full path to the TIF in the original Explorer window.)

Ignore the warning.
What do you see?
{new IE page opens with same square and red x}

Ah. I should also have said switch back to the TIF viewer
or close the current window I guess...

Capture the TIF path from the Address bar (Alt-d,Ctrl-c)
and find your sample file's cache name. (Alt-Enter)

See? I was still assuming you were looking at the TIF viewer...

Make a note of the Cache name: (I couldn't find any way
to capture it so you're going to have to type some of it
some time.) or just leave the Properties page open
for future reference.

Next switch to a cmd window. (The captured TIF path
should still be in the Clipboard.)

Type: cd /d
Press Space and paste in the captured path (Alt-Space,E,P)
Press Enter.
{path from address bar is in form
file:///D:/Temp/Administrator/Temporary%20Internet%20Files.

Not for me. Did you capture it from the Address bar of the TIF viewer
or from the Address bar of the Red-X window?

When I paste
this after 'cd /d ' in cmd window then enter I receive a path not found
error. I have to edit path to 'D:/Temp/Administrator/Temporary Internet
Files' then enter this after 'cd /d ' to switch to the TIF folder}

I do this paste a lot and probably overlook some of the switching details.
(It's really a lot easier to perform than to describe. ;} )

Find the cached .png file by then entering:
dir/s *intraday*.png
(or however much of the cache'd name you want to enter.)
{search found (sub)folder 'D:\Temp\Administrator\Temporary Internet
Files\Content.IE5\CZJ3IWT5' containing file
'3+bbc-thumbnail_thick-line+intraday[1].png'}

Construct the full filename (e.g. in an IE Address bar)
by copying and pasting both the Directory name
(appended by a backslash) and the cached filename.
Press Enter. What happens?
{pasting path and filename, separated by \, into Explorer then clicking <go>
immediately brought up Windows Picture and Fax Viewer showing the graph
correctly!}

Great! That shows that the local file association is working but the
web file association is not for some reason. Possibly MIME related?
You could try disabling MIME sniffing (in Security Settings, Custom Level...
Miscellaneous section)
Disable: Open files based on content, not file extension

Note: I think that this may be one of the many undocumented (requires restart)
options. I would wait until all IE windows are closed (iexplore.exe not
an active process) before trying to test this change.

Note this is not a permanent change I am suggesting, just a temporary
one for a test.

BTW I wasn't aware of imgutil.dll. Looks like it would be involved with
the MIME sniffing at least. I suppose I could test both cases with
RegMon and FileMon some time. Or perhaps Ramesh will clarify
for us.

Perhaps you should have tried uninstalling your other app instead
of overriding it?
{I am not sure what you mean by uninstalling 'other app'. I can view and/or
manipulate png files using Imaging for Windows, Microsoft Photo Editor,
QuickTime, ACDSee and Paint Shop Pro V8.1. Which, if any, is causing the
problem? I use all these, for different functions, so don't wish to remove
(except Photo Editor) any}

That's the one I meant. It had evidently taken over the local file association
so I was imagining that it might have affected the web file association too.
(Purely speculative and just something else that I would try, to test the scope
of the symptom.)


Good luck

Robert
 
Thomas D Scotland said:
Robert,

Here goes with today's investigation.... Todays comments are in following
{{.. ..}}

{{Tried MIME sniffing switch but no change. After changing these settings I
shut down IE & restarted then shut the machine down and rebooted and still no
change. Now the reference to MIME settings has set me thinking... It
shouldn't be necessary to remove any application.

Agreed. I was just thinking that whatever state removing it might restore
might be more stable. I don't know if those apps can affect MIME rendering
or not. Without any explicit knowledge to the contrary it seemed useful to
test what removing the current owner of the local file default would do.

I have changed file
extension to application associations many many times over the years on both
my workstation and laptop without any effect on the IE rendering. I am
convinced the application association issue is a diversion. The assoc &
ftype configurations for both .gif and .png filetypes are exactly the same...
....

... and they are the same for jpg filetype. I can view the TIF cache of
either .gif, jpg or .png in any image viewing application without any
problem.

That reminds me of another test we could try which would avoid
the issue of ownership of the local file default--drag the web file
from the TIF to the application window.

Ha! Here's another one. I used F3 on the TIF viewer to search for
cached .png files and discovered serendipitously that its View was set
for Thumbnails. So I have thumbnails of the graphs that I can drag to
an IE window! Actually dragging thumbnails is somehow less impressive
The issue is clearly that when IE requires the viewer to render a
.gif or jpg it can execute the request but when IE requires the viewer to
render a .png it cannot excecute this command.

I'm not sure that it does. I'd like to see some accesses from some
"viewer" .dlls but I'm not seeing them. I'm not even seeing Ramesh's
imgutil.dll accessed. This is with using just RegMon and FileMon.
If it is already loaded we may need a finer trace tool to be able to detect
calls being made within it.

FWIW here are some of the modules which RegMon referred to
when I did the above drag operation.
shimgvw.dll
shell32.dll
shdocvw.dll
but the only ones which FileMon reported being accessed were
shell32.dll
mshtmler.dll

Of these I know for a fact that the first three have entry points for
both DllInstall and DllRegisterServer. DependencyWalker
reports neither in mshtmler.dll. Therefore the following 3 regsvr32
commands might prove helpful (at least for the case of dragging
thumbnails <eg>):

regsvr32 /i shimgvw.dll
regsvr32 /i shell32.dll
regsvr32 /i shdocvw.dll

Somewhere the
command/execution 'chain' for an IE .png rendering request is 'broken' and my
guess is this problem must lie somewhere within the registry.
Yup.


Now I have
noticed your references to MIME encoding/decoding so I did some searching
within the registry. Working on the premise that as .gif & .jpg are rendered
but NOT .png I am searching for common patterns between .gif & .jpg but
differences with .png. If I look into the '\MIME\Database\Content Type' tree
I find entries for image/gif, image/jpg & image/png. What is significant is
that the .png entry is the oddball. I have exported the relevant sections
and included them below...
....

Key Name: HKEY_CLASSES_ROOT\MIME\Database\Content Type\image/png
Class Name: <NO CLASS>
Last Write Time: 22/07/2005 - 09:16 AM


Would this be when you did a regsvr32 pngfilt.dll ?
We could actually use RegMon to trace the SetValue that it does
when you do that.

Hmm... I was just looking at pngfilt.dll with DependencyWalker.
Apparently there is a delay-load dependency for msjava.dll
which I no longer have. Do either of your systems still use msjava?

Value 0
Name: Extension
Type: REG_SZ
Data: .png

Value 1
Name: Image Filter CLSID
Type: REG_SZ
Data: {A3CCEDF7-2DE2-11D0-86F4-00A0C913F750}

Just to make sure that we are both seeing the same thing,
try finding that CLSID and verify its registry values:

<example>
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\CLSID\{A3CCEDF7-2DE2-11D0-86F4-00A0C913F750}]
@="CoPNGFilter Class"

[HKEY_CLASSES_ROOT\CLSID\{A3CCEDF7-2DE2-11D0-86F4-00A0C913F750}\InProcServer32]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,70,00,6e,00,\
67,00,66,00,69,00,6c,00,74,00,2e,00,64,00,6c,00,6c,00,00,00
"ThreadingModel"="Both"

[HKEY_CLASSES_ROOT\CLSID\{A3CCEDF7-2DE2-11D0-86F4-00A0C913F750}\ProgID]
@="PNGFilter.CoPNGFilter.1"

Key Name: HKEY_CLASSES_ROOT\MIME\Database\Content Type\image/png\Bits
Class Name: <NO CLASS>
Last Write Time: 22/07/2005 - 09:16 AM
Value 0
Name: 0
Type: REG_BINARY
Data:
00000000 08 00 00 00 ff ff ff ff - ff ff ff ff 89 50 4e 47 ....ÿÿÿÿÿÿÿÿ.PNG
00000010 0d 0a 1a 0a ....


... Note that when comparing .gif & .jpg to .png there are two 'Value'
enties 'missing' from the .png section! They are 'CLSID' &
'AutoplayContentTypeHandler'. I am only guessing here but I would not expect
.png images to be handled in a different way to .gif or .jpg? I have tried
to check all !!! occurances of .gif, .jpg & .png entries and compare them for
similarities v. differencies and it is the above MIME entries that are the
most striking. Food for thought??

Good thinking but that is exactly what I have there too.

Unfortunately I am away from home
otherwise I would have immediately compared these enties on this laptop with
my workstation which works correctly with gif, jpg & pngs.}}


HTH

Robert
---
 
Hi Robert,

Set a filter for these two items, and you'll see RegMon displaying this
(Imgutil.dll)

{30C3B080-30FB-11D0-B724-00AA006C1A01}
{6A01FDA0-30DF-11D0-B724-00AA006C1A01}

--
Ramesh, Windows XP MVP
http://windowsxp.mvps.org


Robert Aldwinckle said:
message
Robert,

Here goes with today's investigation.... Todays comments are in following
{{.. ..}}

{{Tried MIME sniffing switch but no change. After changing these settings
I
shut down IE & restarted then shut the machine down and rebooted and
still no
change. Now the reference to MIME settings has set me thinking... It
shouldn't be necessary to remove any application.

Agreed. I was just thinking that whatever state removing it might
restore
might be more stable. I don't know if those apps can affect MIME
rendering
or not. Without any explicit knowledge to the contrary it seemed useful
to
test what removing the current owner of the local file default would do.

I have changed file
extension to application associations many many times over the years on
both
my workstation and laptop without any effect on the IE rendering. I am
convinced the application association issue is a diversion. The assoc &
ftype configurations for both .gif and .png filetypes are exactly the
same...
...

... and they are the same for jpg filetype. I can view the TIF cache of
either .gif, jpg or .png in any image viewing application without any
problem.

That reminds me of another test we could try which would avoid
the issue of ownership of the local file default--drag the web file
from the TIF to the application window.

Ha! Here's another one. I used F3 on the TIF viewer to search for
cached .png files and discovered serendipitously that its View was set
for Thumbnails. So I have thumbnails of the graphs that I can drag to
an IE window! Actually dragging thumbnails is somehow less impressive
The issue is clearly that when IE requires the viewer to render a
.gif or jpg it can execute the request but when IE requires the viewer to
render a .png it cannot excecute this command.

I'm not sure that it does. I'd like to see some accesses from some
"viewer" .dlls but I'm not seeing them. I'm not even seeing Ramesh's
imgutil.dll accessed. This is with using just RegMon and FileMon.
If it is already loaded we may need a finer trace tool to be able to
detect
calls being made within it.

FWIW here are some of the modules which RegMon referred to
when I did the above drag operation.
shimgvw.dll
shell32.dll
shdocvw.dll
but the only ones which FileMon reported being accessed were
shell32.dll
mshtmler.dll

Of these I know for a fact that the first three have entry points for
both DllInstall and DllRegisterServer. DependencyWalker
reports neither in mshtmler.dll. Therefore the following 3 regsvr32
commands might prove helpful (at least for the case of dragging
thumbnails <eg>):

regsvr32 /i shimgvw.dll
regsvr32 /i shell32.dll
regsvr32 /i shdocvw.dll

Somewhere the
command/execution 'chain' for an IE .png rendering request is 'broken'
and my
guess is this problem must lie somewhere within the registry.
Yup.


Now I have
noticed your references to MIME encoding/decoding so I did some searching
within the registry. Working on the premise that as .gif & .jpg are
rendered
but NOT .png I am searching for common patterns between .gif & .jpg but
differences with .png. If I look into the '\MIME\Database\Content Type'
tree
I find entries for image/gif, image/jpg & image/png. What is significant
is
that the .png entry is the oddball. I have exported the relevant
sections
and included them below...
...

Key Name: HKEY_CLASSES_ROOT\MIME\Database\Content Type\image/png
Class Name: <NO CLASS>
Last Write Time: 22/07/2005 - 09:16 AM


Would this be when you did a regsvr32 pngfilt.dll ?
We could actually use RegMon to trace the SetValue that it does
when you do that.

Hmm... I was just looking at pngfilt.dll with DependencyWalker.
Apparently there is a delay-load dependency for msjava.dll
which I no longer have. Do either of your systems still use msjava?

Value 0
Name: Extension
Type: REG_SZ
Data: .png

Value 1
Name: Image Filter CLSID
Type: REG_SZ
Data: {A3CCEDF7-2DE2-11D0-86F4-00A0C913F750}

Just to make sure that we are both seeing the same thing,
try finding that CLSID and verify its registry values:

<example>
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\CLSID\{A3CCEDF7-2DE2-11D0-86F4-00A0C913F750}]
@="CoPNGFilter Class"

[HKEY_CLASSES_ROOT\CLSID\{A3CCEDF7-2DE2-11D0-86F4-00A0C913F750}\InProcServer32]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\

00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,70,00,6e,00,\
67,00,66,00,69,00,6c,00,74,00,2e,00,64,00,6c,00,6c,00,00,00
"ThreadingModel"="Both"

[HKEY_CLASSES_ROOT\CLSID\{A3CCEDF7-2DE2-11D0-86F4-00A0C913F750}\ProgID]
@="PNGFilter.CoPNGFilter.1"

Key Name: HKEY_CLASSES_ROOT\MIME\Database\Content
Type\image/png\Bits
Class Name: <NO CLASS>
Last Write Time: 22/07/2005 - 09:16 AM
Value 0
Name: 0
Type: REG_BINARY
Data:
00000000 08 00 00 00 ff ff ff ff - ff ff ff ff 89 50 4e 47
....ÿÿÿÿÿÿÿÿ.PNG
00000010 0d 0a 1a 0a ....


... Note that when comparing .gif & .jpg to .png there are two 'Value'
enties 'missing' from the .png section! They are 'CLSID' &
'AutoplayContentTypeHandler'. I am only guessing here but I would not
expect
.png images to be handled in a different way to .gif or .jpg? I have
tried
to check all !!! occurances of .gif, .jpg & .png entries and compare them
for
similarities v. differencies and it is the above MIME entries that are
the
most striking. Food for thought??

Good thinking but that is exactly what I have there too.

Unfortunately I am away from home
otherwise I would have immediately compared these enties on this laptop
with
my workstation which works correctly with gif, jpg & pngs.}}


HTH

Robert
 
Ramesh said:
Hi Robert,

Set a filter for these two items, and you'll see RegMon displaying this
(Imgutil.dll)

{30C3B080-30FB-11D0-B724-00AA006C1A01}
{6A01FDA0-30DF-11D0-B724-00AA006C1A01}


Looks like RegMon is less reliable than I thought then.
Those entries should have been picked up by my .dll filter too.

It looks as if there is a lot more caching going on than I realized too.
The best traces would probably be obtained by recreating the scenario
with a new process. I think the process that I was commenting on yesterday
was older than the one I was tracing today.

I didn't mention yesterday that some inexplicable entries for AR7.02's
PDFShell.dll consistently show up. I think that may be indicative of how
third-party programs could get into a chain of things and could be an
example which validates my suggestion to try removing one, especially
one which appears to have taken over a default local file type association.


Robert
---
 
Back
Top