PLM之家精品课程培训

PLM之家精品课程培训

联系电话:18301858168   |   QQ咨询:939801026
NX二次开发培训

NX二次开发培训

UFUN/NXOpen C++和实战案例

适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术。
公众号二维码

关注公众号

点击扫描二维码免费在线高清教程

课程详情
Catia二次开发培训

Catia二次开发培训

市场需求大,掌握核心技术前景广阔

Catia二次开发的市场需求大,人才稀缺。掌握开发技能潜力巨大,随着经验积累将在汽车、航空等领域有所作为。
B站二维码

在线原创B站视频

点击关注工业软件传道士主页

课程详情
Teamcenter培训

Teamcenter培训

全方位培训,从基础应用到高级开发全覆盖

涵盖用户应用基础培训、管理员基础培训、管理员高级培训及二次开发培训等全方位内容,由多年经验讲师打造。
QQ群二维码

加入同行交流

点击扫描二维码加入QQ群

课程详情
×

PLM之家plmhome公众号

课程涵盖: PLM之家所有原创视频

×

关注B站视频

所有高清视频一览无余,全部在线播放学习

×

加入PLM之家QQ群

同行交流,疑问解答,更多互助

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

[交作业] NX9二次开发培训作业001_使用ufcre入口函数

  [复制链接]

2021-8-23 16:29:12 3614 1

清江 发表于 2014-11-17 16:45:55 |阅读模式

清江 楼主

2014-11-17 16:45:55

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

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

x
本帖最后由 清江 于 2014-11-19 10:45 编辑
& |" r: j6 Q1 N& c# K  A1 S; n1 {) ]% \$ x% h- t8 i
% V8 M- ?' s5 O7 H
11月16日培训课程的作业,运行效果如下图:
* |. l4 _: M, X1 _% y# w; x test001.jpg
8 o/ [" c3 B. A
2 b' ~  o( I" q% b2 X- q0 @; d0 |4 |开发代码如下:
( F! ]+ a6 G5 z4 j( H& n5 I+ @
  t, ?: f+ m# u+ f- n, \! h! z/ |/ z2 \/* Include files */
3 L2 p5 F; @4 C$ g* h. ]$ w6 `3 B2 `' F#include <stdio.h>
8 \" e7 Z- g6 g#include <stdarg.h>! E0 t$ m2 H! v
#include <uf.h>
' [$ M8 u% C% V0 R2 s% [#include <uf_ui.h>
, O1 [, U- Z, K( n& G; T( }" X* M; [4 B9 G2 x3 T* U1 E3 y
static void ECHO(char *format, ...)+ D. I; _; q4 d( U) K
{8 f4 o$ w' ^/ V5 J* Z' W9 S( Q% p9 M
    char msg[UF_UI_MAX_STRING_LEN+1];
9 c/ ]4 {6 Q: g- w& T- |6 y: }; [    va_list args;6 S5 k6 b8 W# I% |2 u* A
    va_start(args, format);
+ n" l+ T5 _: u; L: f8 R    vsnprintf_s(msg, sizeof(msg), UF_UI_MAX_STRING_LEN, format, args);& e( ~) b: ]2 ]6 y0 h! n
    va_end(args);
6 F) _; A1 k# v0 q# \( H' _/ k    UF_UI_open_listing_window();& P+ H$ G# P+ j
    UF_UI_write_listing_window(msg);6 {: Y2 v( _$ m/ d7 S5 P
    UF_print_syslog(msg, FALSE);
; T$ ~/ R& r4 k5 O& y}
+ Z$ ]! {! P, J) T3 u0 a0 G6 `0 Q7 j5 Q5 I$ }9 _
#define UF_CALL(X) (report_error( __FILE__, __LINE__, #X, (X)))  x6 T/ h- u) e6 l
. N) }" B4 _( ^' T6 L7 ]
static int report_error( char *file, int line, char *call, int irc)
/ O& U5 x. L5 M: y  q9 R{1 Q: ]' d% }2 ^, d. {
    if (irc)
9 A) F0 N* ?! E5 O( m) o5 F: D7 j8 q; K    {; f8 D8 n- f( P( \5 n5 R  V$ i
        char err[133];! S' o( b$ ?4 a) H$ t
1 v: N& v3 @1 r4 f) E* U7 Q
        UF_get_fail_message(irc, err);' O) f3 [0 ]' C( p6 b# x4 G- Z
        ECHO("*** ERROR code %d at line %d in %s:\n",! F6 \( Q% P- o! ?
            irc, line, file);6 v+ R( ~* R4 d& J) x
        ECHO("+++ %s\n", err);
& P- j1 g2 K2 w  D% z        ECHO("%s;\n", call);: E; a0 H( Z9 t
    }! B/ e# w4 Y; R1 s7 b
& K  V: V9 C& i5 f+ s. {- c" J
    return(irc);
7 [3 P5 U% q  ^. S}
; x& F3 j2 W% `" }
3 K5 {9 {  w! x; \# ~$ s3 h8 M1 }
, D, j* N# Y/ b) W3 ~6 D4 B" m/*****************************************************************************0 E/ C* Z" U. U* q
**  Activation Methods/ W) B( E( R# v8 o
*****************************************************************************/+ A' Z' G. q1 y1 L1 f( H9 ^
/*  New Part
2 i: l3 ]- D* d3 J# _2 c8 I+ z**      This user exit is invoked after the following menu item is activated:
$ N, n# p$ i6 [**      "File->New" */6 N3 H$ @7 }9 i
extern DllExport void ufcre( char *param, int *returnCode, int rlen )9 Q# S2 l7 a+ h5 L( U
{
. C- q/ i9 I9 X: R: d    /* Initialize the API environment */1 g) [% H' x4 ]  t) y+ z6 h3 w
    if( UF_CALL(UF_initialize()) ) ; q1 D' ]+ B" w% Z* _1 Z( x
    {
3 `# P9 r) |, w0 ^        /* Failed to initialize */
/ v* y1 Y/ B9 \        return;
9 B5 T7 i2 T/ W1 R# X    }
8 Q; r1 T- k! T* E, ~
5 p3 b7 u2 R) b) O    /* TODO: Add your application code here */6 z3 j) {+ }# l7 V* M
3 I2 ^6 h7 q2 z$ o3 h9 S+ g
        uc1601("新建部件名称规则:XjfXXX(Xjf000)",1);- {- e7 p/ a$ C0 f

) t4 q( ^0 G: `/ s7 g: R7 a9 A    /* Terminate the API environment */
* l8 F  K' q, ~, z/ u    UF_CALL(UF_terminate());
7 H) P6 P7 `" o3 M}
+ v- G3 p. X. l9 P, O& H5 _1 f' E4 m! K
/*****************************************************************************
% Q* h: j% y' F; [) M**  Utilities' Y0 E  e5 N9 o# [& g8 N, l
*****************************************************************************/& H( a. a  H! O1 a
$ c, F0 C4 y1 F$ q  ~0 ~5 g
/* Unload Handler* w, S" @; ~; D4 a# R% K
**     This function specifies when to unload your application from Unigraphics.+ ], t) u7 m9 o* J1 G
**     If your application registers a callback (from a MenuScript item or a
! p2 Y; g% Z' b& M**     User Defined Object for example), this function MUST return( o) O6 W2 Y" |# [
**     "UF_UNLOAD_UG_TERMINATE". */
, T* F  M0 g5 U) s1 yextern int ufusr_ask_unload( void )4 m1 a8 f# v1 E! u2 x$ _
{
9 T1 o4 }/ x! D' @9 `    return( UF_UNLOAD_IMMEDIATELY );2 d( t7 r1 c2 X$ j
}
) M- o# y' y3 R2 F4 @3 ?8 g  W4 J; e8 }+ M. t: I- z6 c

$ |" U+ x( J- F4 s# J% a
. r8 G# F% x6 l( K: H- b. B. k. f4 M+ G1 ~- T3 [' D! t) _

评分

参与人数 1PLM币 +5 收起 理由
admin + 5 很给力!

查看全部评分

上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复1

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了