- UID
- 150088
- 积分
- 0
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2004-6-16
- 最后登录
- 1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
小弟刚刚学习ObjectARX 2000,,现在在把一个AUTOCAD 12.0的程序移植到AUTOCAD 2000上!我按照书上介绍的方法做了下面的工作:1..连接库的修改
2.原代码的修改
(1)更改应用程序的入口函数
(2)添加模块定义文件
(3)更改了ADS函数名
但是现在编译怎么都通不过!有两个问题请教各位高手!!!
1.原程序中引用了head.h 头文件,如果不去掉它,则只有一个错误,错误提示是:" fatal error C1083: Cannot open include file: 'head.h': No such file or directory Error executing cl.exe."
2.但如果去掉此头文件,出现的错误怎么改都是102个!错误提示都是这些错误:"C:\study\CHKLOOP\CHKLOOP.CPP(197) : error C2027: use of undefined type 'EntityInfo'
C:\study\CHKLOOP\CHKLOOP.CPP(24) : see declaration of 'EntityInfo'
C:\study\CHKLOOP\CHKLOOP.CPP(197) : error C2227: left of '->object_info' must point to class/struct/union
C:\study\CHKLOOP\CHKLOOP.CPP(197) : error C2228: left of '.LinePro' must have class/struct/union type
C:\study\CHKLOOP\CHKLOOP.CPP(197) : error C2228: left of '.ang' must have class/struct/union type"
原程序一部分如下:
int GetArcParm(ads_name object_Arc,struct EntityInfo *eninfo)
{
struct resbuf *object_ptr,*temp_ptr;
object_ptr=acdbEntGet(object_Arc);
for(temp_ptr=object_ptr; temp_ptr!=NULL; temp_ptr=temp_ptr->rbnext)
{
if(temp_ptr->restype==10)
{
eninfo->object_info.ArcPro.cp[X]=temp_ptr->resval.rpoint[X];
eninfo->object_info.ArcPro.cp[Y]=temp_ptr->resval.rpoint[Y];
eninfo->object_info.ArcPro.cp[Z]=temp_ptr->resval.rpoint[Z];
}
if(temp_ptr->restype==40)
eninfo->object_info.ArcPro.rad=temp_ptr->resval.rreal;
if(temp_ptr->restype==50)
eninfo->object_info.ArcPro.sang=temp_ptr->resval.rreal;
if(temp_ptr->restype==51)
eninfo->object_info.ArcPro.eang=temp_ptr->resval.rreal;
}
ads_relrb(object_ptr);
if(eninfo->object_info.ArcPro.eang>eninfo->object_info.ArcPro.sang)
eninfo->object_info.ArcPro.Arc_Type=LeArc;
else
eninfo->object_info.ArcPro.Arc_Type=YouArc;
return RTNORM;
}
急盼各位高手指点一下!怎么修改才能通过!小弟在线等待! |
|