I have import flash activeX control to my WTL control, when I need to handle the flash control event, I add IDispEventImpl to the inherit list, but I get some errors:
error C2872: ‘DISPPARAMS’ : ambiguous symbol
could be ‘d:\\Develop\\Microsoft Visual Studio .NET 2003\\Vc7\\PlatformSDK\\Include\\OAIdl.h(701) : tagDISPPARAMS DISPPARAMS’
or ‘e:\\Project\\IM\\Src\\FlashWrapper\\Debug\\flash8.tlh(523) : ShockwaveFlashObjects::DISPPARAMS’
After look up the source both in ATL and Flash tlh file, I find out that flash control generate DISPPARAMS and EXCEPINFO structures same as the ATL does. So I can’t use the showckwaveFlashObjects namespace. I make these changes:
#import “C:\\WINDOWS\\system32\\Macromed\\Flash\\flash8.ocx”
using namespace ShockwaveFlashObjects;
to
#import “C:\\WINDOWS\\system32\\Macromed\\Flash\\flash8.ocx”
/*
Don’t user ShockwaveFlashObjects namespace, because if you inherit
IDispEventImpl you will get EXCEPINFO ambiguous error!
*/
using ShockwaveFlashObjects::IShockwaveFlash;