Ureader.com  
Microsoft software help and Community
   home   |   control panel login   |   archive   |  
 
platform
active.directory
adsi
adsi.iis-admin
base
com_ole
complus_mts
component_svcs
database
directx
gdi
graphics_mm
internet.client
internet.server
internet.server.isapi-dev
localization
mapi
messaging
msi
mslayerforunicode
multimedia
networking
networking.ipv6
sdk_install
security
shell
telephony.tapi_2
telephony.tapi_3
telephony.tsp
telephony.wte
tools
ui
ui_shell
win_base_svcs
win16
  
 
date: Fri, 8 Aug 2008 08:11:29 -0700,    group: microsoft.public.platformsdk.shell        back       


Intermittent icon overlay update failure after sending SHChangeNot   
Hello,

Our product is a software suite that includes a shell extension and an icon 
overlay component.  I am seeing some troubling, intermittent behavior that 
perhaps somebody could explain or provide ideas for fixing.

If I right click on a file or folder and select our action from the context 
menu, our shell extension does some stuff to the file or folder that changes 
whether or not our icon overlay should be displayed.  When the shell 
extension is done with its work, it calls:

SHChangeNotify(SHCNE_UPDATEITEM, SHCNF_PATH, pathToFileorDir, NULL)

To notify the shell to update the icon overlay for the item.  Sometimes the 
shell responds to this message and updates the icon, sometimes it doesn't.  
The problem seems to be exacerbated on UNC paths.  I do believe it is a 
timing issue of some sort, because the icon is updated every single time if I 
put a five second sleep in the shell extension before calling SHNotifyIcon.

Also, I have verified that in the cases where the icon is not updated, 
Explorer never calls into IShellIconOverlayIdentifier::IsMemberOf in our icon 
overlay library.  It is as if Explorer is ignoring the update notificaiton.

Thank you for any feedback you can offer.

-- 
-Jack
date: Fri, 8 Aug 2008 08:11:29 -0700   author:   Jack Smith am

RE: Intermittent icon overlay update failure after sending SHChangeNot   
A little more info about what our shell extension does to files & folders 
before sending SHChangeNotify...

1. Get and store (in memory) the creation and modified dates of the original 
file.
2. Create a temporary file with a unique name
3. Copy the contents of the original file into the temp file
4. Delete the original file
5. Rename the temp file to the original file's name
6. Set the creation date and modified date of the new file to those of the 
original file.

What is really interesting is that the icon overlay updates every single 
time if I do not perform step 6.  If I don't perform step 6, I don't even 
have to call SHChangeNotify.  With step 6 in place, the icon overlay is never 
updated unless I call SHChangeNotify, but then it is not updated every time.

-- 
-Jack
date: Fri, 8 Aug 2008 08:18:10 -0700   author:   Jack Smith am

RE: Intermittent icon overlay update failure after sending SHChangeNot   
To Microsoft Support:

I started this thread from the Managed Newsgroups area under My MSDN 
Subscription, Subscription Benefits.  Supposedly, this is supposed to ensure 
that I receive a response.  According to the MSDN Managed Newsgroups page, 
"Microsoft registers your posting alias with your Passport account. This 
ensures that your questions are answered promptly and protects you from 
unsolicited email..."  The "Welcome to the MSDN Managed Newsgroups" page 
says, "In order to receive a response from the community or a Microsoft 
engineer, make sure you include your no-spam alias on every post."

I created this post using the built-in newsgroup reader from within the MSDN 
Subscriptions site.  Doesn't this mean that I should have received a response 
from a Microsoft engineer by now?

I'd appreciate any help you can offer.  Thank you.

-- 
-Jack
date: Thu, 14 Aug 2008 05:45:01 -0700   author:   Jack Smith am

Re: Intermittent icon overlay update failure after sending SHChangeNot   
Jack Smith wrote:
> Doesn't this mean that I should have
> received a response from a Microsoft engineer by now?

Yes, it does. I would contact MSDN to ask why your question has not been responded to. Here is the link:

http://go.microsoft.com/?linkid=6479064

-- 
Jim Barry, Microsoft MVP
date: Thu, 14 Aug 2008 14:42:46 +0100   author:   Jim Barry

Re: Intermittent icon overlay update failure after sending SHChang   
Thanks for the link, Jim.  I'll contact them using the form.

--
-Jack
date: Thu, 14 Aug 2008 08:16:12 -0700   author:   Jack Smith am

Re: Intermittent icon overlay update failure after sending SHChang   
Just to follow up on this publicly... I submitted two requests for assistance 
to Microsoft using the form linked to in Jim's post.  I have received no 
response to either request.  And nobody from the MSDN has responded to my 
question in the initial post of this thread.  It has now been eleven days and 
I have heard absolutely nothing from Microsoft.


-- 
-Jack
date: Tue, 19 Aug 2008 06:43:01 -0700   author:   Jack Smith am

Re: Intermittent icon overlay update failure after sending SHChang   
[Reposted due to buggy MS news servers losing messages]

Jack Smith wrote:
> Just to follow up on this publicly... I submitted two requests for
> assistance to Microsoft using the form linked to in Jim's post.  I
> have received no response to either request.  And nobody from the
> MSDN has responded to my question in the initial post of this thread.
> It has now been eleven days and I have heard absolutely nothing from
> Microsoft. 

Hey Jack, I just got back from holiday. Did you get any response yet? If not, maybe you should try contacting MSDN by telephone. I suppose it's possible that they did reply but the email got eaten by a spam filter.

-- 
Jim Barry, Microsoft MVP
date: Sun, 31 Aug 2008 15:22:15 +0100   author:   Jim Barry

Re: Intermittent icon overlay update failure after sending SHChang   
Hi Jim.  No, I've heard nothing from Microsoft on the issue.  I have 
submitted three separate requests using the form on the page you pointed me 
to, but have received no response to any of them.  My next step is to open a 
support incident.  It's a shame that we have to use up one of our agreement's 
incidents just to find out why they're ignoring me in the other channels they 
offer.


-- 
-Jack
date: Tue, 2 Sep 2008 05:31:01 -0700   author:   Jack Smith am

Google
 
Web ureader.com


    COPYRIGHT 2007, YARDI TECHNOLOGY LIMITED, ALL RIGHT RESERVE  |   contact us