When I mix managed with unmanaged code I get the compiler error: "'IDataObject' : ambiguous symbol". How do I resolve this? Thanks.

1) error C2872: 'IDataObject' : ambiguous symbol
2) fatal error C1903; unable to recover from previous error(s); stopping compilation
3) warning C4935: assembly access specifier modified from 'public
4) warning C4935: assembly access specifier modified from 'public

File - C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\PlatformSDK\Include\ObjIdl.h for all 4 errors

typedef /* [unique] */ IDataObject *LPDATAOBJECT; -- selected code for Error1

IDataObject : public IUnknown -- selected code for Error2

typedef interface IDataObject IDataObject; -- selected code for Error3

typedef interface IMessageFilter IMessageFilter; -- selected code for Error4

The error has been resolved.

Move all 'using namespace XXXX' from .h to .cpp

This question has already been answered. Start a new discussion instead.