在VC6中,使用SolidWorks二次开发向导生成的工程(c++),在VS2005可直接编译通过,在VS2008中,无法编译通过。
解决方法:
stdafx.h中
_WIN32_WINNT 0x0400改为_WIN32_WINNT 0x0500
在#include <afxwin.h>前添加:
#if _MSC_VER >= 1500
#define __IEntity_INTERFACE_DEFINED__
#endif
在import Solidworks各个tlb之后,添加:
#if _MSC_VER >= 1500
#undef __IEntity_INTERFACE_DEFINED__
#endif