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

[已解决] ufun 获取文件夹下所有prt文件名

  [复制链接]

2019-4-17 08:00:53 2380 2

iPhone 发表于 2019-4-16 12:56:29 |阅读模式

iPhone 楼主

2019-4-16 12:56:29

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

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

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

使用道具 举报

全部回复2

admin 发表于 2019-4-17 07:54:25

admin 沙发

2019-4-17 07:54:25

C#的  没有用NX 函数 & E/ ~/ m5 k( J0 B* b
- b" ^4 z* C7 D  O% t8 L

, J2 a$ j/ E" ^9 q% i) s5 A[mw_shl_code=csharp,true]  Public Class list_all_parts_in_directory' i- p# L8 V1 `: l, o5 q* z

7 _) v# x: I# ^( w; a) J& ?9 r8 V        Public Shared Sub Main()/ L3 W% ]; w, |8 d; t3 O4 Y9 J

+ Z0 i) x4 \+ v% x- }            Dim theSession As Session = Session.GetSession()& P, w1 x6 ]8 ]1 ]  e& w  Y
            Dim lw As ListingWindow = theSession.ListingWindow()
; B  H1 F1 @+ G! r1 b. J
# d+ q" N+ o* f2 n, U2 J! n4 W            Dim foldername As String = "", f5 x) q  u' `/ z) Z1 F
            lw.Open()
0 F8 C" l5 l0 v+ r, P; ^: k( w+ D            If (select_directory(foldername) <> DialogResult.OK) Then
, D6 ~, V& g1 U. q3 }                lw.WriteLine("Input canceled...exit" & vbCrLf), ?: w9 t% D& |
                Return
$ d4 h2 }8 J$ c9 A9 B7 i* b" ?& E) e            End If
& r  ^( I  N9 b( f, ]( }* ^5 {+ L
            Dim dir As DirectoryInfo = New DirectoryInfo(foldername)9 X7 o, Y3 H; s
            Dim fsi As FileSystemInfo
6 y% |: i3 f. n7 |' E. i6 U2 y2 W
            lw.Open()
' A, |4 T% q- b2 L            lw.WriteLine("Parts in directory: " _$ I! w+ g. Y/ a; e% g: e: f+ ^2 M
              & Path.GetFullPath(dir.ToString()) & vbCrLf)
" D1 H& Y( k8 Z7 t' z3 T
) V( |& }( r4 N& H" A) Z$ A            For Each fsi In dir.GetFileSystemInfos()6 u7 m7 z/ w& L. y
                If (TypeOf fsi Is FileInfo And fsi.Extension.Contains("prt")) Then5 L- ^; t+ E7 e& I, x! b- a
                    Dim f As FileInfo = CType(fsi, FileInfo)
7 [$ o1 h' G$ U                    Dim size As Long = f.Length
- u3 l) O! c! a; g                    lw.WriteLine(f.Name & " " & size & "Bytes" & vbCrLf)$ I  r. p* u/ x) j: E  Z
                End If
, W5 U2 W, A. @8 d7 s5 k7 m; V! z" X            Next fsi+ [2 r& [+ C9 p9 s

; B% T( ^) P9 p* K$ k        End Sub
2 H: H0 v% F" Z, X! a2 F. [
# @: T3 C0 d. t. h4 m* Z        Public Shared Function select_directory(ByRef foldername) As System.Windows.Forms.DialogResult; }- A* d/ A. O2 ~+ H# Q( h0 p0 ^0 E
2 y+ P7 e$ [4 _1 r5 P5 A* D. {
            Dim fbd As FolderBrowserDialog
$ s) b8 g/ e9 \7 w& O/ s7 O, M            Dim result As System.Windows.Forms.DialogResult
, n# o% j! }+ Y# ?1 C
1 b; {8 l. N: K& v2 c8 o! v            fbd = New System.Windows.Forms.FolderBrowserDialog()
2 h4 v! `* a) `6 N' a            fbd.Description = "Select directory to check"" y3 Q$ s6 _! l- I2 @( x1 |- T9 \
            fbd.ShowNewFolderButton = False
4 n+ j1 A7 h. P# t. ^+ W" g            ' start browsing at Desktop folder, uncomment for any other default directory% a- a1 Y1 F% M5 y. E4 ?7 i8 R
            ' fbd.SelectedPath = GetEnvironmentVariable("UGII_BASE_DIR")
/ [  y* d( {8 B( S+ d6 B            ' fbd.SelectedPath = GetEnvironmentVariable("UGII_BASE_DIR") + "\Moldwizard"$ a5 l7 g( t" f( }0 H8 [" }' o! W  @
            ' fbd.SelectedPath = "c:\aaa\bbb"
, v6 k4 y8 n% s% N( g( `            result = fbd.ShowDialog()& r  S, d% G( H6 e3 u
            foldername = fbd.SelectedPath- P2 r5 s# d2 K
            fbd.Dispose()
* O, q6 a/ y7 F: s4 _* X/ z& H            Return result
* t0 j! o2 T( ~, f5 K. i9 a9 k" [% j
        End Function( P5 S1 h8 x7 K9 R

7 r4 T2 d! O, u4 f% b/ _3 @# I9 j        Public Function GetUnloadOption(ByVal dummy As String) As Integer$ U( f+ e& w2 @& h0 o% G, @
            GetUnloadOption = NXOpen.Session.LibraryUnloadOption.AtTermination1 Y/ X# h  u. I0 @: ?; N
        End Function4 a: _1 \; M2 K2 Q* p
  w6 ~) G( ~9 V4 e
    End Class[/mw_shl_code]& Z- T( \; E7 ]; q. q" ^2 U& a! E
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

admin 发表于 2019-4-17 08:00:53

admin 板凳

2019-4-17 08:00:53

ufun 的 方法
( \  |# Y0 Q( }  N3 M  n  e/ ^8 P. s" k: t3 N' F% e

) H5 O6 I6 @: w0 A, a: }& A2 i( b[mw_shl_code=c,true]int
) h, k8 {$ ]- M6 _5 J+ w% b( ]        cnt = 0,  d' i& a) ~, P' ~; F: o
        resp;
: B) S' O( A' k5 M    tag_t; O$ O: F) l% R- E
        part;
5 _5 z1 G; q' I    char' m* Z/ j* R0 o7 v
        dirspec[MAX_FSPEC_SIZE+1] = { "" },! P& [4 Z; f" S7 ]2 G$ U7 R
        fname[MAX_FSPEC_SIZE+1],( x' v- `2 ^' i) Q" y" P7 o
        part_name[MAX_FSPEC_SIZE+1];6 ^$ M& z- h/ `
    UF_PART_load_status_t- Z: p+ {( g, O. m% E" j2 i
        status;  @) T/ A$ N5 S: K: K6 {" n9 N% w1 E# x
% s: s# T1 w+ g/ @  i
    if (UF_CALL(UF_initialize())) return 1;3 Z; c! L, Q* K. E/ Y0 [' ^- `
/ Q+ ~& F8 l' j. I  G1 k
    while (printf("Enter directory path:\n") && gets(dirspec) &&( F" u+ T3 s6 ^, {
        strlen(dirspec))
  d. h3 m( R1 z/ x& i( @    {; d4 k) }' g6 z' D
        uc4508(dirspec, (1<<13)|(1<<11), 0, "*.prt");
6 s2 F# ?8 v) w9 B        while ((resp = uc4518()) == 0)+ {, ?  q- h* c+ D, \/ q
        {
; t- N* i( f1 U' C            UF_CALL(uc4600(fname));
& g" _3 p% L2 _2 J1 ~3 S7 L6 [. P            UF_CALL(uc4575(dirspec, 2, fname, part_name));+ I* B( `2 Q+ K4 G& y

* a+ b  Q/ z0 `+ Z            ECHO( "%d.  %s\n", ++cnt, part_name);( r; Y, o/ P/ F" N3 d* A

6 ]- @6 d1 n& W1 Z, e8 k  p) S. _$ b7 h            UF_CALL(UF_PART_open(part_name, &part, &status));
, p; C3 ^7 T2 k" O) S6 v* q            if (status.n_parts > 0) report_load_status(&status);
" C8 a" H' d3 |2 x  J4 w% d            if (!status.failed)& D3 {! x! |: m$ c
            {
4 v7 X  `7 h! W# g. ?                do_it();. I3 b$ ~: v; [; Z' P( t1 a; Y0 c
                UF_PART_close_all();
; ~0 F  Z: i; ]- P; J! Q            }9 O& n' [4 h1 B% \9 K% i4 n
        }" g& R% y$ j' j8 b- C9 p: o7 b
$ |% n$ V, Y8 C6 D1 G/ t
        UF_CALL(uc4548());7 U$ h8 o3 V, E& z3 a

( x8 m" [0 d' N+ c2 d- o        ECHO("\nProcessed %d parts.\n", cnt);
7 X% q5 B% k7 c. s: E' G    }[/mw_shl_code]
" e$ v2 i9 y  H7 I
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了