PLM之家精品课程培训,联系电话:18301858168 QQ: 939801026

  • NX二次开培训

    NX二次开培训

    适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术对于老鸟也值得借鉴!.

    NX CAM二次开发培训报名 NX二次开发基础培训报名
  • PLM之家Catia CAA二次开发培训

    Catia二次开发培训

    Catia二次开发的市场大,这方面开发人才少,难度大。所以只要你掌握了开发,那么潜力巨大,随着时间的积累,你必将有所用武之地!

  • PLM之Teamcenter最佳学习方案

    Teamcenter培训

    用户应用基础培训,管理员基础培训,管理员高级培训,二次开发培训应有尽有,只要你感兴趣肯学习,专业多年经验大师级打造!

  • PLM之Tecnomatix制造领域培训

    Tecnomatix培训

    想了解制造领域数字化吗?想了解工厂,生产线设计吗?数字化双胞胎,工业4.0吗?我们的课程虚位以待!

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

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

  [复制链接]

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

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

清江 楼主

2014-11-17 16:45:55

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

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

x
本帖最后由 清江 于 2014-11-19 10:45 编辑
+ o1 M" ]. `/ r0 ^- V) b2 m  V
4 V* e) E; n: K
4 S& r1 w4 z- K# J* ]6 C11月16日培训课程的作业,运行效果如下图:
: x  R- }* p. g4 Q! J* I5 _& Q test001.jpg 8 C2 P; _$ b8 F% i

; N$ T) L/ O0 K% c) e% X开发代码如下:9 C& {; F) \* r/ S# I
8 O" |2 \: W( _. L3 t) M
/* Include files */+ o9 s4 x9 \# s3 Z+ C
#include <stdio.h>) Q( ]7 x  `$ z7 F# ~. }2 A
#include <stdarg.h>' F9 Z; K* e: d% w
#include <uf.h>: e5 A; v; a% z, X$ L. |
#include <uf_ui.h>1 W- _/ }) \, C

# z" c1 e% }8 V2 q' C7 r0 qstatic void ECHO(char *format, ...)
, z5 p! r8 U" S" r; f4 ^{
. ?9 M5 {3 \( {$ r" |5 \4 I4 M: P! ]6 w    char msg[UF_UI_MAX_STRING_LEN+1];
* Q2 w4 e! f7 l" T7 [( C    va_list args;/ \% p' z  k7 q
    va_start(args, format);
: e. R! U4 h4 e) B- Q% W. O+ u9 m4 C    vsnprintf_s(msg, sizeof(msg), UF_UI_MAX_STRING_LEN, format, args);
: R* i% f( n  Y2 M1 D# a    va_end(args);
, d, B4 Y6 |) x. e: w    UF_UI_open_listing_window();
. R2 {0 y( z$ F    UF_UI_write_listing_window(msg);7 v! {2 [! z3 J/ `% G
    UF_print_syslog(msg, FALSE);' F3 Y( s; X1 H/ {( R
}6 u; t0 _6 }0 Q  D4 v6 K# B

; S: M5 E* M; c3 x#define UF_CALL(X) (report_error( __FILE__, __LINE__, #X, (X)))
. e1 ~( o4 X3 h1 J: Q; {( }
' o' M6 C) B9 N1 m$ e& j/ hstatic int report_error( char *file, int line, char *call, int irc)0 O9 o. t% R% O7 f
{
4 |, c; e9 G# ?, a+ C! T  r! T    if (irc)
2 B/ b# _( s" a2 r8 {9 }    {
7 H( J  w9 j/ K5 [+ ], n2 d        char err[133];- E" n7 I% x( D% i
! l9 L% Z5 @+ D6 E. [' y7 W
        UF_get_fail_message(irc, err);
& r: b7 E2 Z8 C% ]+ i; e+ o' M; D        ECHO("*** ERROR code %d at line %d in %s:\n",4 W; I- |/ T' c6 u1 d2 G  K5 s2 m9 R
            irc, line, file);
$ i8 r; x3 h, l. C: m" I        ECHO("+++ %s\n", err);
5 ~- v: E1 V) z5 [$ w        ECHO("%s;\n", call);- c: p0 o( Z  ]9 S1 v* O
    }8 F: i$ I1 _, P! f* C9 D
; m, E2 I. a9 W
    return(irc);
; K0 `: h" O% }# l}
4 ^0 J5 C/ _3 Z/ F/ v$ B7 Z4 x4 v/ @3 a3 c1 z5 k5 _

5 }* u: F* r9 N% Y/ l1 h2 S/*****************************************************************************+ q3 y; N& t  N0 J( [
**  Activation Methods# t# d" i/ t& R2 R1 T0 |
*****************************************************************************/9 w6 n2 R4 _+ w" Q
/*  New Part1 r0 y+ `1 e: a+ }9 G* q2 s
**      This user exit is invoked after the following menu item is activated:+ ?3 t# a+ T" O- |5 j) k
**      "File->New" */) Z7 Y& c2 y1 F6 u- C  W$ o5 @
extern DllExport void ufcre( char *param, int *returnCode, int rlen )0 Z% u: C4 m+ J4 Z! y" n, x2 A4 x  L
{
8 V6 Z( A/ P: g, c$ D5 \2 U    /* Initialize the API environment */( B5 Z( u; t& I8 K& w
    if( UF_CALL(UF_initialize()) )
# i6 K" s3 j) P! F    {# @! H( M9 s3 \- e! i
        /* Failed to initialize */* ]& `' R0 h% C+ k$ U# Q. B
        return;
- x, t* g% D- |2 S    }# w, A0 z8 a; d. R( U
9 C! Z7 i" ~* D2 W: r! O) O7 d+ k
    /* TODO: Add your application code here */2 I4 ]2 J8 W0 w- t* b

' }) O/ X. n: t+ I* G9 f        uc1601("新建部件名称规则:XjfXXX(Xjf000)",1);7 w2 g: ?- B7 u$ }2 I% F% a

  T1 p7 r8 p* A5 F    /* Terminate the API environment */0 s  g. Y! X3 `1 b  C& e" F3 l0 l& B
    UF_CALL(UF_terminate());
7 A3 u7 a4 U9 Z! [7 y7 ?$ A}- R; U3 G- l1 T+ ?! g- |4 e
+ j- o8 C  \; ~" E9 N7 K8 N
/*****************************************************************************
1 M; g# x6 A; ~1 P( q**  Utilities/ b! q7 p" Y9 v( ^
*****************************************************************************/$ x; r$ ?- Q$ B  o
# e: ]; j9 h3 }( y
/* Unload Handler
! j: b1 j& S" J- |, p2 U8 t5 k**     This function specifies when to unload your application from Unigraphics.3 `: E" b! [# X% C
**     If your application registers a callback (from a MenuScript item or a
. P/ m+ b$ a) X! x**     User Defined Object for example), this function MUST return
( F' N) I% P( f9 @* X/ Z! n# W0 w**     "UF_UNLOAD_UG_TERMINATE". */
" m: x7 e# E# c7 a. z! X1 |extern int ufusr_ask_unload( void )
7 i$ t& ~5 J4 e{
9 H* g9 g7 D$ ?2 m    return( UF_UNLOAD_IMMEDIATELY );& s5 M+ G) m# S+ D
}
7 r. P& g- s5 |/ q+ b' I8 ~9 g) ?1 g, v3 ^, H; C+ v
# w( Y, e4 o7 x: o5 L7 P7 |' x/ O2 a6 j3 e
. v, C# X/ C2 g* U, ~
! j) m' T5 {5 q' `0 F2 X0 w" L

评分

参与人数 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二次开发专题模块培训报名开始啦

    我知道了