中望CAD采VBA开发的zwcad.zvb文件可自动载入但不能加载

craig_tao 2018-05-24 04:04:09
我用VBA二次开发了应用程序,保存为zwcad.dvb后将其保存于安装目录下,这样可以实现每次启动cad时均可将zwcad.zvb载入,但一运行就出现 run time error: method "xxxx" of object "xxxxx" failed. 因为程序本身是没有问题的,只需要我再手动加载一次,便可以正常运行,请问各位大侠,这是什么原因造成的?应如何解决,谢谢!
...全文
2584 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
craig_tao 2018-05-28
  • 打赏
  • 举报
回复
现在问题解决了,只需将Thisdocument修改为Activedocument就可以了,尽管没有用到脆皮大雪糕的方法,但也是受到了很大的启发,非常感谢脆皮大雪糕,向您学习!
craig_tao 2018-05-25
  • 打赏
  • 举报
回复
引用 1 楼 chewinggum 的回复:
猜测是你引用了什么东西,但那东西在你这个程序后面才被加载。 看看你那个 object "xxxxx" 建议,在调用这个method "xxxx" 前先检查object的是否有效,如果无效则延迟一段时间再试。
另外,请问如何检查Object是否有效?谢谢
craig_tao 2018-05-25
  • 打赏
  • 举报
回复
引用 1 楼 chewinggum 的回复:
猜测是你引用了什么东西,但那东西在你这个程序后面才被加载。 看看你那个 object "xxxxx" 建议,在调用这个method "xxxx" 前先检查object的是否有效,如果无效则延迟一段时间再试。
您好,谢谢!我程序中出错的这个Object就是当前文件 Thisdocument,相当于autocad中的Thisdrawing. 每次启动CAD时在加载程序列表中能看到我的程序,但运行就出现上述错误,只要我在“工具”-“加载应用程序”中选中程序手动再加载一次就能正常使用。以前使用Autocad时没有出现过这样的问题。
脆皮大雪糕 2018-05-25
  • 打赏
  • 举报
回复

Public Sub init()
start:
    Dim errCount
    On Error GoTo sleep '如果发生对象调用错误,到sleep标签处
    Dim XXX As Object
    Call XXX.method
    
    On Error GoTo errhandle '对象调用错误通过了才会到这里来,此后的错误进入业务处理错误陷阱。
    'TODO:你的业务逻辑
    Exit Sub
sleep:
    errCount = errCount + 1 '计数,出错几次了
    If errCount > 5 Then Exit Sub '如果错误超过5次,没必要一直死循环等待,退出
    sleep 1000 '延迟一秒
    GoTo start '重新开始
errhandle:
    'TODO:业务逻辑错误处理
    
End Sub
脆皮大雪糕 2018-05-24
  • 打赏
  • 举报
回复
猜测是你引用了什么东西,但那东西在你这个程序后面才被加载。 看看你那个 object "xxxxx" 建议,在调用这个method "xxxx" 前先检查object的是否有效,如果无效则延迟一段时间再试。
中望CAD+2014:实现专业设计效率显著提高! 中望技术论坛全新改版,马上签到赢金币! 图纸“代言” 独创智能图纸语音,你的CAD图纸它代言 功能更全 全新动态块、支持DWG2013格式、打印PLT文件等实用功能,全面提升设计效率 API更强 API接口功能持续增强,新增支持.NET二次开发,平台拓展性更全面 关于中望CAD+ 中望CAD+是中望软件自主研发的全新一代二维CAD平台软件,用自主研发的内核,通过独创的内存管理机制和高效的运算逻辑技术,保证软件在长时间的设计工作中快速稳定运行;新增动态块、光栅 图像、关联标注、最大化视口、CUI定制等实用功能,手势精灵、智能语音等独创智能功能,最大限度提升设计效率;强大的API接口为CAD应用带来无限可 能,可满足不同专业应用或二次开发需求。 更多视频>> 中望CAD+六大亮点了解更多中望CAD+2014细节功能>> 全新内核精雕细琢,更快更稳定 全新一代自主研发二维CAD平台技术,带来更精准快速的软件品质,历经6年精心研发、多行业用户充分验证,更快更稳定。 内存优化,胜任复杂的设计任务 独创的内存管理优化,内存占用降低、释放更彻底,使得复杂任务的长时间运行更快、更稳定。 API更全,平台拓展性更强 全面支持VBA/LISP/ZRX/ZDS,支持.NET二次开发,专业软件的开发和移植更高效。 功能持续进步,设计更高效 动态块、光栅图像、关联标注、最大化视口、CUI定制等功能上的持续进步,真正实现高效设计。 独创智能系列功能,设计更简化 独创智能语音、鼠标精灵等智能设计功能,满足个性化的需求,让设计更简化、效率大幅提升。 兼容最新CAD文件格式 经过50,000张图纸严格测试,保证图形文件无缝兼容最新版本的DWG/DXF文件,图形信息准确无误,并与其它CAD产品实现无缝兼容。

2,503

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧