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

Teamcenter ITK二次开发源码分享:创建自定义文件夹

[复制链接]

2017-6-21 08:41:22 5686 1

admin 发表于 2015-1-21 12:57:22 |阅读模式

admin 楼主

2015-1-21 12:57:22

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

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

x

  E( g& [% Z) Z

' h4 M' `8 w4 \: {! u; [Teamcenter ITK二次开发源码分享:创建自定义文件夹$ n9 o. _* X- z7 O/ I
输入的第一个参数是文件夹名称,第二个是文件夹描述。
0 o& L7 _, ~7 K+ E- B/ t( E
: @$ p0 l! L) A' C- n/ u

9 C5 [: u! N: ^#include <TC/tc.h># o3 _8 B4 a, D$ S
#include <tccore/aom.h>2 p) D. j' E/ y7 L
#include <tc/folder.h>9 O6 {6 @( K3 B6 d' T# X; V
#include <tccore/workspaceobject.h>* F( Y6 n. f' w/ ]

5 I6 r( D! P) j* _1 ~#define EXIT_FAILURE 1, T9 u" ?2 K6 n% q4 J- T5 T. r6 w

5 }+ M9 j5 u6 P7 Y- G5 b& Z& Jstatic void report_error_stack( void )
$ X* Z+ B/ o7 B9 `# s+ C8 f {: H! f8 l: ]9 S4 ~& q2 c/ l; w5 o
        int
$ l1 q2 x( M% T, g! u. r- N. O            n_errors = 0,
. E2 K- U3 d0 s/ g  w( O            i = 0;
% S! ~5 n1 @! r3 _7 \1 m        const int
; L  m+ T  R" s4 p            *severities = NULL,3 `; {% E8 e. S$ e
            *statuses = NULL;
5 G/ x( w, W7 f% Q8 m3 U        const char1 d( \8 {! `7 _" O4 e
            **messages;! a3 k+ B, R' j+ K' ^3 ?1 Q: k

( v, Z$ x. ]8 Q. F4 f     EMH_ask_errors( &n_errors, &severities, &statuses, &messages );
8 H3 L: r1 h/ O     printf( "Error(s): \n");
. N, d0 w: y# B3 o% N( R. [     for (i = 0; i < n_errors; i++) 2 P! B( N4 a! h5 m
     {3 f/ @: Q3 K) g; ?( Z+ ~: q
         printf( "    %6d: %s\n", statuses, messages );
9 l9 n2 z! I  L- V0 s$ w     }# \  h6 H) Y. q! N
     exit(EXIT_FAILURE);
: i9 v) T  ~( d7 S% d }2 q+ @, m% }2 q9 V

" x1 r$ \1 M  _6 T- S3 Z( D* S  Lint ITK_user_main(int argc, char* argv[])( U4 i  X. d$ Y% A. S
{
& G$ b& {: [# `8 s: c% O    int
4 c$ G* o/ a2 u7 k/ M/ k        status;
, _2 @  t2 Q$ @- {: g    char
1 C, u3 A. V+ |6 V4 h( f        folder_name[WSO_name_size_c+1],
7 s  J  ~  J- L& @( M        fldr_desc[WSO_desc_size_c + 1],# w0 q+ @  C! s5 B/ B3 G# W& J
        *message;
8 C& S2 o, `- g% E- u1 q    tag_t7 P0 L/ m2 S) _6 |
        new_folder;/ e0 C2 M- g: ]& \5 P

; K4 P5 h' v. u" B" l% ?  w7 g" Y    ITK_initialize_text_services( 0 );( ^1 g, T1 C% @- z4 l
    status = ITK_auto_login();
5 D1 i& |: V( C2 F0 _$ t. G3 P    if(status!= ITK_ok)
0 E  \+ }! V7 b* t) w, T) F    {8 K4 d* J* d4 t7 }
        report_error_stack();
3 `# S  N3 B- W8 D9 F2 j9 O3 |. d    }$ A% a  H9 V2 I5 h8 O
    else$ A  f- z* {% s8 k
    {# {9 i4 N; j) E' }8 b# {/ b7 a
        printf("iMAN login successful.\n");3 P2 e# E) q1 p: P6 ?/ f
    }
& q/ X; z2 Q  D6 B$ O6 J, D; m1 J5 m% |
    ITK_set_journalling(TRUE);5 c& @: P8 w" e3 w: B6 {6 K5 ]: i

% e2 {9 Z$ p7 U8 [- K% i( r    if (argc > 1) strcpy(folder_name, argv[1]);
& W6 S+ r1 f5 e    else
  X% x( _& o+ t0 `    {+ ~& k  @- B" |5 W0 a
        printf(" Specify the Input in Following format : \n");7 m& J/ l8 U9 I$ d/ l
        printf("program_name folder_name  folder_description\n");! v4 Q; l. q; G( f* w( p$ B7 Z7 M4 T
        printf("E.g. create_folder phase_3 working_folder_for_phase_3_items\n");
/ X/ N/ @) V/ f8 w. f        return ITK_ok; 7 h( S, D5 @5 Z3 o
    }   $ n2 c. E/ t5 [) ~, |3 ^
0 ?& U% p) s, M$ A: K
    if (argc > 2) strcpy( fldr_desc, argv[2]);
0 j: O3 ^+ t: @    else strcpy( fldr_desc,"");# c3 W$ H6 Y" I2 h" r. O/ O7 |  W

- E2 b# U! a! Z( w    status = FL_create( folder_name, fldr_desc, &new_folder);
- w6 F) k; s  l7 t4 O# l    if(status!= ITK_ok) report_error_stack(); 1 r( F# ~! m  A. I

; c' g  M# I! [+ E    status = AOM_save(new_folder);
' _7 {5 {4 T& p# V/ O2 n( f- r    if(status!= ITK_ok)  report_error_stack();
3 c5 ^; y! C+ M0 E. P    else  printf("Folder '%s' Saved; ", folder_name);: V1 [( J! M; Z! w

- {" L; `. @2 S2 f    status = AOM_unlock(new_folder);
: Z; n3 o# P1 p  Y1 I- F    if(status!= ITK_ok)  report_error_stack();
4 N; r2 w9 l6 H7 t% U( ?4 P  n+ K" j+ I    else  printf("Unlocked; ");
5 o3 k5 k5 A" }3 u2 @/ b! `
! M/ Q# A, f# S    status = FL_user_update_newstuff_folder(new_folder);" j2 ?+ `2 C$ ~0 D  Q& q7 h. S
    if(status!= ITK_ok) report_error_stack();% \( \& D: ~4 j# ?9 @
    else  printf("Put in Newstuff Folder.\n");
7 a2 W5 @8 f7 X' u- C
3 g6 {, s/ |6 \7 B    ITK_exit_module(TRUE);
$ A+ L0 L2 v' `6 A    return status;
) C( z5 Q! D0 t, _, ]2 _}  j5 F$ |. y8 h; l
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

全部回复1

pop227mm1 发表于 2017-6-21 08:41:22

pop227mm1 沙发

2017-6-21 08:41:22

萌新请问 这个创建了的文件夹 在哪里可以查看
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了