乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 59|回复: 3

请教高手这个问题出在哪?

[复制链接]

1

主题

1

帖子

1

银币

初来乍到

Rank: 1

铜币
5
发表于 2006-8-25 11:23:00 | 显示全部楼层 |阅读模式
我用VC++.NET2002及ObjectARX2006开发CAD2006下的ARX程序,程序的功能是读取一个数据文件,绘制成图.编译时没有错误.
运行完成后,出现出错提示:
unhandled 80000003h Exception at 7c921230h
我已看到运行结果了,但容不得进行保存,CAD就终止了.可奇怪的是,这段代码原来在VC++和ObjectARX2002编译,并在CAD2002下运行,无任何出错提示.
请问各位高手,问题到底出在哪呢?
谢谢!
回复

使用道具 举报

5

主题

16

帖子

1

银币

初来乍到

Rank: 1

铜币
36
发表于 2006-8-25 22:52:00 | 显示全部楼层
我遇到同样得问题
。。。
AcDb3dPolyline *pPline;
  ads_name ent2;
  AcDbObjectId id2;
  AcDbObject *e1;
  if(RTNORM!=acedEntSel("选择地形线",ent2,q))return;//选择多线段L'
//error
acutPrintf(" 选择地形线 ok");
。。。。。
后面得语句就不会进行输出
请指教啊

回复

使用道具 举报

2

主题

54

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
62
发表于 2006-8-30 18:36:00 | 显示全部楼层
1.学过Windows编程的话,你会明白CAD能不能显示一个字符串,在于有没有一个机会让他处理WM_PAINT事件,如果没有,就算你使用了acutPrintf它也不能显示,
假设崩溃问题就出在你的函数中,运行你的函数的时候整个CAD在你的函数的控制中,没有可能显示任何信息,只有在你的函数运行结束,或调用了任何一个交换控制权的函数,比如acedEntSel的时候,CAD才能显示出这条信息。
这就是说,就算:
//error
acutPrintf(" 选择地形线 ok");
//。。。。。
//后面得语句就不会进行输出
也不代表错误出在acutPrintf这句的前面。也可能在这之后。但是错误出现在这句信息得到显示的机会之前——也就是函数结束前,或任何一个acedXXX函数被调用之前。
2.Arx的错误基本上的输出都是这个信息,完全无法判断是什么错,因为可能的情况太多了。基本上是:1.试图打开不存在的图元,但是你的程序没有发现它打开失败就直接进行访问。2.删除了加入数据库的对象。3.未初始化的对象的使用。
回复

使用道具 举报

5

主题

16

帖子

1

银币

初来乍到

Rank: 1

铜币
36
发表于 2006-8-31 08:33:00 | 显示全部楼层
谢谢楼上的
那天在你帮助下,我把程序调试出来了
少写一个 获取id的代码
导致严重错误,
在此深表感谢。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-2-5 20:52 , Processed in 0.149980 second(s), 60 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表