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 3565 1

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

清江 楼主

2014-11-17 16:45:55

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

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

x
本帖最后由 清江 于 2014-11-19 10:45 编辑
1 w- W, j/ N3 T' ]4 m* H* v+ E# ?  X' j( b3 H3 r+ K

# U0 U3 j% ~2 J11月16日培训课程的作业,运行效果如下图:
8 @: w: M4 U# f7 z, w( Q test001.jpg . y; ~4 k( s3 b9 L: V* \! g( m
4 _5 i. A* o3 K6 O
开发代码如下:/ R/ Z7 o) Y' X5 y
& e3 i  E4 U4 Q# ^
/* Include files */' F( N) i0 ?5 T7 m+ X  t: r: e
#include <stdio.h>% I3 E! _1 v2 p
#include <stdarg.h>) q1 x* f, m1 y2 X, j) A
#include <uf.h>
# _9 j. a2 r- [' p6 c5 d#include <uf_ui.h>! e7 f4 b3 k4 e% |$ Y) N) z' c
7 X+ w: n( h) X0 M, e
static void ECHO(char *format, ...)
7 _0 l; b5 T7 D# Q. ~  E" x{
( ?- f2 K; S) z6 q6 Y6 }, w    char msg[UF_UI_MAX_STRING_LEN+1];
$ h/ N/ S: `: D+ Y* ~( z9 j    va_list args;3 P7 [! N$ f" |: e$ V2 A+ n
    va_start(args, format);
( M( H. a& w% K9 u    vsnprintf_s(msg, sizeof(msg), UF_UI_MAX_STRING_LEN, format, args);# o+ \$ ]- M" e) E# R% K
    va_end(args);
# h. ^" S, }6 G+ |    UF_UI_open_listing_window();
4 [+ r: f: z/ v" A0 a; T  q    UF_UI_write_listing_window(msg);
- s" D; w  W% {+ J+ ^0 m! @    UF_print_syslog(msg, FALSE);) e5 q: p% D/ t* j6 y
}
3 y" i) Z9 b% M3 f5 [
3 }6 H7 L% A- B* l4 t, y9 T# T#define UF_CALL(X) (report_error( __FILE__, __LINE__, #X, (X)))! ~/ l( s9 ?) }) f& v; |. Z; c
) J8 d2 ^5 l' j
static int report_error( char *file, int line, char *call, int irc)
7 ?( f) _2 L8 h* D{; ~7 O6 V) L/ D  l( S. L8 y, E/ _. p
    if (irc)9 ~( ?0 v& Z+ D8 g, |8 I. o" E
    {% W4 P9 Q1 p+ f: i, T
        char err[133];
/ e! z6 J: E- [
; _2 D: D3 T+ _; Y! H; |        UF_get_fail_message(irc, err);5 Q2 @5 Q- M1 H
        ECHO("*** ERROR code %d at line %d in %s:\n",( P* {- }% y2 h' d$ z2 k" P; S
            irc, line, file);
* ?' M( g9 e! ?& g' `5 h6 {        ECHO("+++ %s\n", err);
, s3 q' |6 v3 V9 Y/ U- Y        ECHO("%s;\n", call);
/ a" _- o7 y# Y, r& N    }
* a1 F4 g: s/ ~+ \4 c7 y/ S
. ^' R, B& s8 O% i! X- L    return(irc);
. B8 Y& E: @$ E, Y: I6 q5 s$ [}  x" W' Q9 N6 d3 R% n9 R5 d

3 C, [: s8 p3 @* x! @  l
! J2 i! {* p* A: ]2 F% M+ Q" b/*****************************************************************************; J" X5 \2 ], |
**  Activation Methods  z! m. D) y1 ?5 `0 s6 {
*****************************************************************************/, B4 s/ k$ j5 F8 z' D+ R* o0 u/ M
/*  New Part
/ ~+ ]4 O% O' d; m( |9 V) q**      This user exit is invoked after the following menu item is activated:
. V" ~+ ^4 j' ?/ @) q9 \**      "File->New" */( K) V6 p+ M+ q4 h
extern DllExport void ufcre( char *param, int *returnCode, int rlen )
# c: K& t5 b9 u5 u; J{
+ g3 m' \8 M/ l    /* Initialize the API environment */  ]; _. t: q8 v3 T
    if( UF_CALL(UF_initialize()) ) " l% i4 V& M; m. a6 {/ ]; Q; r
    {
: D/ ~8 n) p* b        /* Failed to initialize */
% }' V3 H) \3 ~4 @8 s4 O        return;
, s  A$ g' p* Q; x    }( W) v6 }9 e- @7 P# _" r
7 y$ W8 ^0 e' u! K$ x8 N
    /* TODO: Add your application code here */( J. b! \: n, h8 W
8 O1 t! ?& B2 Z7 R, K
        uc1601("新建部件名称规则:XjfXXX(Xjf000)",1);- z  R# o* h$ I$ h% j, b7 v

6 I: ?& V" c0 B    /* Terminate the API environment */
! F, V! {# _2 o' p4 X! E    UF_CALL(UF_terminate());
/ j8 D, ~* P- N5 L$ [: r9 o$ {) x}
/ v/ R' c# y8 A% a" `) J/ n5 z7 J" z) ^
/*****************************************************************************8 J4 {  i0 h, J- W* k6 p
**  Utilities0 f' j6 [# c9 x2 p
*****************************************************************************/# |! `  w* e# J3 J- |' ~
6 ~$ ~; W! [' b% f
/* Unload Handler& D2 b/ T- H8 c3 d0 e' K
**     This function specifies when to unload your application from Unigraphics.
2 K7 Y( I4 X9 F; Q, }, k. k**     If your application registers a callback (from a MenuScript item or a& ~2 J" c  b. ?
**     User Defined Object for example), this function MUST return* z: [4 u. b  v2 c* }1 c, ^- o
**     "UF_UNLOAD_UG_TERMINATE". */3 A' ]8 P5 h- t& x+ P5 V
extern int ufusr_ask_unload( void )& i9 K% X" b. u2 d
{
3 i% C6 _" b5 c    return( UF_UNLOAD_IMMEDIATELY );' v( p7 J0 ^1 l+ h6 N) }  o
}! x2 x! |) B' w4 i( B) W$ Y
$ G+ B) C/ v% W, k
4 {! N+ ~5 @) ^3 P

' a; g1 Q. B  A7 Y/ Z
- L4 T: d6 v- h& \( n

评分

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

    我知道了