PLM之家PLMHome-国产软件践行者

[资料] UF_CALL(X) (report( __FILE__, __LINE__, #X, (X)))的使用技巧

[复制链接]

2014-3-11 16:20:30 4052 0

admin 发表于 2014-3-11 16:20:30 |阅读模式

admin 楼主

2014-3-11 16:20:30

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
在程序开头,创建如下的基于report函数的宏:4 J& Z! x3 {& [$ P$ ~9 K
#define UF_CALL(X) (report( __FILE__, __LINE__, #X, (X)))- i6 ?% U( x* x( @- z1 ?
只要把原UF函数原封不动地作为UF_CALL宏的参数,UF出错时就能自动实现错误捕捉\错误信息的转换\输出.如:- F3 C% G  m& t# ~+ C9 u
UF_CALL(UF_ASSEM_set_work_part(Part_Tag));  V) P; X' f$ i1 |% }# b
UF_CALL(UF_STYLER_ask_value(dialog_ID,&Data));
" X* O: M. ]6 a% h内部UF程序一旦出错,轻者引发UG警告终止当前程序,重者直接使UG挂起,因此依靠UG系统的警告并不能完全指出程序的错误。而外部UF运行时出错则直接回到操作系统控制下,系统给出的警告信息就更笼统了。考虑到这一点,调用所有含参数的内部UF时,都应该使用UF_CALL。只是对于无输入参数的UF函数或返回值不是整型的UF函数使用UF_CALL会使宏代换出错,如:7 A0 H9 I# R5 F; D! _7 Q+ O3 f) R
UF_CALL(UF_PART_save_()) /* 错误 */4 B% {$ j$ X6 I( p' I
使用UF_CALL宏只是为调试除错服务的,正式程序中应该把它去掉,以获得更好的运行性能。
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了