missing IContextMenu

  • Thread starter Thread starter shafeeque
  • Start date Start date
S

shafeeque

I am building a shell extn. project in .net ide which is
converted from vC++ 6.00.

During buid i am getting the following error
"error C2787: 'IContextMenu' : no GUID has been associated
with this object", The same project works fine in VC++6.0.

I have included the following files also
#include <shlguid.h>
#include <shobjidl.h>
#include <shlobj.h>

any help will be appreciated
 
shafeeque said:
I am building a shell extn. project in .net ide which is
converted from vC++ 6.00.

During buid i am getting the following error
"error C2787: 'IContextMenu' : no GUID has been associated
with this object", The same project works fine in VC++6.0.

I have included the following files also
#include <shlguid.h>
#include <shobjidl.h>
#include <shlobj.h>

any help will be appreciated

This is interesting. There are two <comdef.h> header files in VC.NET, one in
Vc7/include and the other in Vc7/PlatformSDK/include. The former splits off
the smart pointer typedefs into comdefsp.h, and it doesn't include
IContextMenu. The latter does. You can try to #include the PlatformSDK
header directly, change your INCLUDE path order, or supply the missing
typedef yourself, e.g.

struct __declspec(uuid("000214e4-0000-0000-c000-000000000046"))
IContextMenu;

_COM_SMARTPTR_TYPEDEF(IContextMenu, __uuidof(IContextMenu));
 
IContextMenu no associated GUID

The response is for people that find this thread by searching for the same error.

Just define at the top of the stdafx.h file above your includes:
#define _ATL_NO_UUIDOF

Thanks,
Brian R. Bondy
http://www.vwsolutions.com
 
Back
Top