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-国产软件践行者

[二次开发源码] NX二次开发源码分享:NXManager中,获取用户的组和角色

  [复制链接]

2019-12-10 17:53:21 4065 2

admin 发表于 2013-11-6 19:00:16 |阅读模式

admin 楼主

2013-11-6 19:00:16

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

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

x
在集成环境中,NXTeamcenter的集成中,获取当前用户的组group 和角色 role。
! i0 f5 |% a4 S% }' g* R, g
  Y! [8 d/ i2 h
  1. #include <stdio.h>
    - T! T9 f  r9 o! W1 K% `! |- c! f2 Z
  2. #include <string.h>: E, W0 ~& v$ R" w$ u. q
  3. #include <uf.h>! p9 Y7 n: F8 U  J, U
  4. #include <uf_ui.h>4 v  f- ]& P7 F1 D4 |4 J! q! o
  5. : w1 {* V& h: d5 F! C% D6 }
  6. #include <NXOpen/NXException.hxx>
    . T, b6 T- X0 g9 I/ e* ?& g
  7. #include <NXOpen/Session.hxx>
    5 V2 F. d  L  Z( o0 o
  8. #include <NXOpen/ListingWindow.hxx>
    * N5 Q4 p7 w3 g- }# I+ D
  9. #include <NXOpen/LogFile.hxx>7 H$ p  ~& h8 e9 i
  10. #include <NXOpen/PDM_SessionSettings.hxx>
      h- Q7 P' u* f( [- s9 P9 w: v0 ^
  11. #include <NXOpen/Part.hxx>5 K  c: e) A6 X: z, U! Y+ }, E
  12. #include <NXOpen/ParTCollection.hxx>6 _+ X7 E% s" `" q, e
  13. #include <NXOpen/Session.hxx>/ h9 ]1 n7 C- a3 H( S( _+ `
  14. " A# B% m( v, K: X) G/ A: L, `' |
  15. using namespace NXOpen; // <== Very Important!$ w. F/ ]5 `3 C% k7 @0 ]/ Z

  16. 5 b( Z: w$ n; s7 r2 o# z* x% K
  17. #include <stdarg.h>" T' g( P7 p( z, |0 V4 k$ R
  18. # y  o/ s, J+ c/ T1 H6 Q
  19. static void ECHO(char *format, ...)+ j: \- n% x) F; S
  20. {
    * o, l; R" a- Q0 n3 F4 m$ R4 t
  21.     char msg[UF_UI_MAX_STRING_LEN+1];& W2 h2 _( h, k0 G5 a4 R) E
  22.     va_list args;. ^' ?6 ^: {3 A8 v( q# E
  23.     va_start(args, format);9 p* p; `0 R  e+ e" A# F. E
  24.     vsprintf(msg, format, args);
    % J$ g3 w; h! u( M: U: s, o% x
  25.     va_end(args);
    ' R* T8 h, R0 l- d/ L. a
  26.     UF_UI_open_listing_window();" y; ~4 h' j* x+ M* s
  27.     UF_UI_write_listing_window(msg);8 Y% `% e8 E7 A4 N. |6 B' g
  28.     UF_print_syslog(msg, FALSE);
    1 q$ J2 L( G4 b* O$ a
  29. }' j2 J/ k; z/ _
  30.   R/ a% @( @! V  O/ p" @" p$ k5 j
  31. #define UF_CALL(X) (report_error( __FILE__, __LINE__, #X, (X)))7 @+ @' S( ~' a
  32. ; Z2 }: V, _1 C' H
  33. static int report_error( char *file, int line, char *call, int irc)# w4 u% J" R2 A  o* M9 g, T4 E
  34. {
    . {+ `0 ?3 D' T3 d1 j; h
  35.     if (irc)
    - o& z( ^5 L* W  ^. n
  36.     {  p$ o# j' Y4 ]; J. U7 T- ^
  37.         char err[133];- t2 f. T0 Q  S/ w) r0 ~0 P0 n/ q

  38. ) p# b) C% C8 ?5 }  Y3 f/ V- ~# z
  39.         UF_get_fail_message(irc, err);
    0 A1 C  A* ~3 H2 d
  40.         ECHO("*** ERROR code %d at line %d in %s:\n",
    ' \: }$ o: S- s( N. r
  41.             irc, line, file);
    ; Z  F% x# p1 W3 W8 i; Y
  42.         ECHO("+++ %s\n", err);1 n- A$ i! d! g" {  Z( k  k6 F8 P
  43.         ECHO("%s;\n", call);1 `9 m: C3 n) E/ U/ f# [
  44.     }
    # m% E& }+ W0 y$ u( a1 V

  45. 3 i  g, O5 y+ s
  46.     return(irc);0 H+ V9 Q4 r* O# S7 i
  47. }
    / q9 [# S, Y+ s$ H5 s/ q& E

  48. ) F& t0 K' n% E. V; I$ U) T
  49. ' o6 R' h) \- y3 r8 `% T' Q
  50. static void do_it(void)
    ( q5 q$ _: C" C+ w
  51. {5 N, a' Z* m! p/ x6 `
  52.     Session *theSession = Session::GetSession();
    ; }5 y7 i7 ]& O! R3 F3 ]+ D* r
  53.     Part *workPart(theSession->Parts()->Work());
    7 l5 K; |' p4 B: }: S
  54.     Part *displayPart(theSession->Parts()->Display());
    ' n: `: R6 J# A) }1 q
  55.     9 b7 Z( z  w, L. X- L' Y
  56.     PDM::SessionSettings *sessionSettings1;0 @$ w8 x& X8 H9 u0 c
  57.     sessionSettings1 = theSession->NewDatabaseSessionOptions();% C  m, S7 B. F9 @6 ^8 f
  58.       Z% e1 ?4 {! @
  59.     NXString CurrentGroup;
    * J8 S# v, K! R" t
  60.     CurrentGroup = sessionSettings1->Group();
    2 }9 E4 T- n- L: ~! M8 I
  61.    
    5 o7 P& B$ b1 d+ J
  62.     NXString CurrentRole;* R0 E0 k) J, k: e; }( Y
  63.     CurrentRole = sessionSettings1->Role();3 I1 U, W4 n' d$ {

  64. 4 K0 K3 Z) a! F- `; ^
  65.     theSession->ListingWindow()->Open();
    % P* v& |0 G3 @; q9 ?, {$ l. f
  66.    
    ' j6 p, i1 \, Y$ V- a' x& F
  67.     theSession->ListingWindow()->WriteLine("Current Group: ");
    0 Q( j8 s5 l% g3 U7 q
  68.     theSession->ListingWindow()->WriteLine(CurrentGroup);1 F, P( z6 {! Y9 q8 R
  69.         
    / T& D# p1 v) u& \1 a
  70.     theSession->ListingWindow()->WriteLine("Current Role: ");   
    . ]" V) O3 ^( s- T' V, \) `
  71.     theSession->ListingWindow()->WriteLine(CurrentRole);
    ' m3 h0 e2 D. D, |$ Q5 d
  72. 3 ?% D2 q6 ]3 ]6 D
  73. }- ]& c$ M# H  C0 q1 q
  74. 0 K) i2 H/ G, C4 S/ W0 g
  75. /*ARGSUSED*/
    ' Q' E- ^, s- \
  76. void ufusr(char *param, int *retcode, int paramLen); v# f$ l, E& l
  77. {- ~! n& ]9 w  g9 u+ Y! u
  78.     if (UF_CALL(UF_initialize())) return;
    : n( Y; Z* ?2 `/ k
  79.     do_it();6 y9 X7 J2 I1 ~
  80.     UF_terminate();- A7 j+ B3 e/ j: C4 c) _8 M
  81. }' p- R( t7 V' D1 c
  82. , B" P  N# O1 ]1 I# G
  83. int ufusr_ask_unload(void)
    * k8 y/ F" v4 e2 W
  84. {
    " h4 m. m* k' P* ?
  85.     return (UF_UNLOAD_IMMEDIATELY);
    ) v8 b* o. Z7 U6 ?1 R& Y5 i
  86. }
    5 W$ R  @* z! P. b+ I- v
复制代码
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复2

yuleihz 发表于 2016-4-16 23:42:58

yuleihz 沙发

2016-4-16 23:42:58

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

使用道具 举报

licxsw 发表于 2019-12-10 17:53:21

licxsw 板凳

2019-12-10 17:53:21

为什么拷贝代码 会产生一连串乱码呢?是防止拷贝吗?
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了