需要包含如下文件
#pragma warning(push)
#pragma warning(disable : 4192 )
#pragma warning(disable : 4146 )
#import " C:\Program Files\ArcGIS\com\esrisystem.olb " \
raw_interfaces_only, \
raw_native_types, \
no_namespace, \
named_guids, \
exclude ( " OLE_COLOR " , " OLE_HANDLE " , " VARTYPE " )
#pragma warning(pop)
exclude ("OLE_COLOR", "OLE_HANDLE", "VARTYPE")参数是必要的。因为windows定义这些变量为unsigned long数据类型,这与ArcGIS中的定义冲突。
加入以上语句编译后,在程序目录下会找到"*.tlh"(type library header)和"*.tli"(type library implentation)两个文件,相当于c++中的 .h和.cpp文件。
在编译的过程中如果出现问题,可以用arcgis中带的工具"LibraryLocator"定位查找组件库。