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: Tue, 4 Mar 2008 22:44:01 -0800,    group: microsoft.public.platformsdk.shell        back       


Ownerdrawn menu item   
for my NSE on XP target I am using the CDefView 

 I have used CDefFolderMenu_Create2 during my IShellFolder::GetUIObjectOf 
(riid == IContextMenu)   to help construct the menus when the user r-clicks 
on a item or folder.  CDefFolderMenu_Create2  is called with a bunch of open 
keys :

HKCR\*,HKCR\Directory,HKCR\Folder    

[I do this to try and pick up stuff like winzip and TortisesSVN, etc]
and it returns a IContextMenu* (say pDefMenu). 

During the execution of MyContextMenu->QueryContextMenu I populate the hMenu 
that is passed in with my menu items and then call  
pDefMenu->QueryContextMenu to populate the defaults.

When the menu is displayed I see Open,Explore...etc, I also see the guys 
that I've added.  

But the TortisesSVN menu and submenu are not drawn.  If I click on the space 
that is empty in the menu display,  it brings up the TortisesSVN dialogs/web 
pages.  So I know they are almost there!

I dumped out the menu with GetMenuItemInfo and discovered that this item is 
ownerdrawn.  

HOW DO I GET THE CDefView to get TortieseSVN menu to be drawn?

Also:  think that TortisesSVN stuff is in every place in the registry that 
winzip is, yet I have the entries (even if they are not drawn) for 
TortisesSVN, but nothing for winzip.  Any Ideas?



-- 
Gak -
 Finecats
date: Tue, 4 Mar 2008 22:44:01 -0800   author:   usfinecats am

RE: Ownerdrawn menu item   
Hello Finecats,

Please call GetUIObjectOf for IContextMenu3 or, at least, IContextMenu2. As 
far as I know, owner drawn menus were not taken into consideration before 
IContextMenu2. 

Regards,
Jialiang Ge (jialge@online.microsoft.com, remove 'online.')
Microsoft Online Community Support

==================================================
For MSDN subscribers whose posts are left unanswered, please check this 
document: http://blogs.msdn.com/msdnts/pages/postingAlias.aspx

Get notification to my posts through email? Please refer to 
http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
ications. If you are using Outlook Express/Windows Mail, please make sure 
you clear the check box "Tools/Options/Read: Get 300 headers at a time" to 
see your reply promptly.

Note: The MSDN Managed Newsgroup support offering is for non-urgent issues 
where an initial response from the community or a Microsoft Support 
Engineer within 1 business day is acceptable. Please note that each follow 
up response may take approximately 2 business days as the support 
professional working with you may need further investigation to reach the 
most efficient resolution. The offering is not appropriate for situations 
that require urgent, real-time or phone-based interactions or complex 
project analysis and dump analysis issues. Issues of this nature are best 
handled working with a dedicated Microsoft Support Engineer by contacting 
Microsoft Customer Support Services (CSS) at 
http://msdn.microsoft.com/subscriptions/support/default.aspx.
==================================================
This posting is provided "AS IS" with no warranties, and confers no rights.
date: Wed, 05 Mar 2008 08:09:54 GMT   author:   (Jialiang Ge [MSFT])

RE: Ownerdrawn menu item   
The problem as I see it is that menu items are added in because CDefView has 
read information from the registry keys.  Cdefview must be communicating with 
these app's to get their menus added in.  My IShellFolder implementation does 
not know about them.  So whose implementation of IContextMenu3 (or 2) should 
be called to get them drawn?  
-- 
Gak -
 Finecats


"Jialiang Ge [MSFT]" wrote:

> Hello Finecats,
> 
> Please call GetUIObjectOf for IContextMenu3 or, at least, IContextMenu2. As 
> far as I know, owner drawn menus were not taken into consideration before 
> IContextMenu2. 
> 
> Regards,
> Jialiang Ge (jialge@online.microsoft.com, remove 'online.')
> Microsoft Online Community Support
> 
> ==================================================
> For MSDN subscribers whose posts are left unanswered, please check this 
> document: http://blogs.msdn.com/msdnts/pages/postingAlias.aspx
> 
> Get notification to my posts through email? Please refer to 
> http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif
> ications. If you are using Outlook Express/Windows Mail, please make sure 
> you clear the check box "Tools/Options/Read: Get 300 headers at a time" to 
> see your reply promptly.
> 
> Note: The MSDN Managed Newsgroup support offering is for non-urgent issues 
> where an initial response from the community or a Microsoft Support 
> Engineer within 1 business day is acceptable. Please note that each follow 
> up response may take approximately 2 business days as the support 
> professional working with you may need further investigation to reach the 
> most efficient resolution. The offering is not appropriate for situations 
> that require urgent, real-time or phone-based interactions or complex 
> project analysis and dump analysis issues. Issues of this nature are best 
> handled working with a dedicated Microsoft Support Engineer by contacting 
> Microsoft Customer Support Services (CSS) at 
> http://msdn.microsoft.com/subscriptions/support/default.aspx.
> ==================================================
> This posting is provided "AS IS" with no warranties, and confers no rights.
> 
>
date: Wed, 5 Mar 2008 08:15:01 -0800   author:   usfinecats am

RE: Ownerdrawn menu item   
What is the container of the context menu? DefView?

Assuming that it is the container of the context menu, DefView should call 
the IContextMenu2/IContextMenu3 of the context menu handler that inserted 
the owner-drawn menu items in the menu.
date: Thu, 06 Mar 2008 16:58:22 GMT   author:   (Dave Anderson [MS])

RE: Ownerdrawn menu item   
As I said in my initial question, I am using DefView.  Everything seems ok, 
but as you suggested CDefView should be calling IContextMenu2::...Handler2  
Why is this not the case, where might I look?
-- 
Gak -
 Finecats


"Dave Anderson [MS]" wrote:

> What is the container of the context menu? DefView?
> 
> Assuming that it is the container of the context menu, DefView should call 
> the IContextMenu2/IContextMenu3 of the context menu handler that inserted 
> the owner-drawn menu items in the menu.
> 
>
date: Thu, 6 Mar 2008 09:43:01 -0800   author:   usfinecats am

RE: Ownerdrawn menu item   
Do you have a repro of the problem that we could debug locally?
date: Mon, 10 Mar 2008 21:51:53 GMT   author:   (Dave Anderson [MS])

RE: Ownerdrawn menu item   
Yes indeed!
-- 
Gak -
 Finecats


"Dave Anderson [MS]" wrote:

> Do you have a repro of the problem that we could debug locally?
> 
>
date: Thu, 13 Mar 2008 10:39:01 -0700   author:   usfinecats am

Google
 
Web ureader.com


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