修改代码后,用vs2008+arx2010编译的库,增加了一个依赖ACAPP.ARX,然后部分库加载...
之前用vs2008+arx2010编译的库,能在CAD2010/2011/2012中成功加载,后来因为要编译64位的程序,修改了代码,然后就只能在CAD2010上加载,其他版本上有部分库就加不进去了,用Dependency查看,和原来的相比,增加了一个依赖acapp.arx,代码修改如下:
virtual Acad::ErrorStatus getOsnapInfo(
AcDbEntity* pickedObject,
int gsSelectionMark,
const AcGePoint3d&pickPoint,
const AcGePoint3d&lastPoint,
const AcGeMatrix3d& viewXform,
AcArray<AcGePoint3d>& snapPoints,
AcArray<int>& geomIdsForPts,
AcArray<AcGeCurve3d*>& snapCurves,
AcArray<int>& geomIdsForLines) = 0;
将以上代码修改如下:
#ifdef _WIN64 //win64
virtual Acad::ErrorStatus getOsnapInfo(
AcDbEntity* pickedObject,
Adesk::GsMarker gsSelectionMark,
const AcGePoint3d& pickPoint,
const AcGePoint3d& lastPoint,
const AcGeMatrix3d& viewXform,
AcArray<AcGePoint3d>& snapPoints,
AcDbIntArray & geomIdsForPts,
AcArray<AcGeCurve3d*>& snapCurves,
AcDbIntArray & geomIdsForLines) = 0;
#else//win32
virtual Acad::ErrorStatus getOsnapInfo(
AcDbEntity* pickedObject,
int gsSelectionMark,
const AcGePoint3d&pickPoint,
const AcGePoint3d&lastPoint,
const AcGeMatrix3d& viewXform,
AcArray<AcGePoint3d>& snapPoints,
AcArray<int>& geomIdsForPts,
AcArray<AcGeCurve3d*>& snapCurves,
AcArray<int>& geomIdsForLines) = 0;
#endif
希望有知道的朋友指点我一下,这里卡了很长时间了
cad命令行里有什么提示? 风树 发表于 2013-10-24 13:23 static/image/common/back.gif
cad命令行里有什么提示?
d:\uelib\libr_arx2013_32\apequipcommand10.arx 无法找到所需的程序。
AcRxDynamicLinker 加载“d:\uelib\libr_arx2013_32\apequipcommand10.arx”失败
D:\Program Files\Autodesk\AutoCAD 2013\acad.exe 小单shan 发表于 2013-10-24 14:28 static/image/common/back.gif
d:\uelib\libr_arx2013_32\apequipcommand10.arx 无法找到所需的程序。
AcRxDynamicLinker 加载“d:\uel ...
你的AutoCAD 2013是64位的? 风树 发表于 2013-10-24 14:52 static/image/common/back.gif
你的AutoCAD 2013是64位的?
不是呢,32位和64位我是在不同的机器上测试的,这个是32位的
不是以上代码修改的问题
页:
[1]