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

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

  [复制链接]

2019-4-17 08:00:53 2229 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 函数
! `9 V" ]1 [, N$ {% G. c9 ?1 B$ T+ n/ {' a: h
  b% F! y/ A' a& N
[mw_shl_code=csharp,true]  Public Class list_all_parts_in_directory
4 N4 o! c# }* G' U; [
0 x9 v3 R1 z8 Q9 u& Y' F3 K        Public Shared Sub Main(): ^$ Z2 V" q' w/ G. e3 ^
  f+ w7 B# U- A
            Dim theSession As Session = Session.GetSession()
7 U8 ?& q! Y! ?: e% ?* P            Dim lw As ListingWindow = theSession.ListingWindow()
) P% A9 w9 m! y+ d# w+ R& m' v; J% ?5 \+ L
            Dim foldername As String = ""
, h. W0 x- E; g8 R1 _            lw.Open()
7 d, Y2 k: Q. g9 F0 d: e8 M            If (select_directory(foldername) <> DialogResult.OK) Then) J/ C; w( `+ R
                lw.WriteLine("Input canceled...exit" & vbCrLf)
# C1 Z% X- ^  V* L, E3 T                Return8 h% c0 c3 n" B' T- n3 r
            End If
& u7 I1 e$ v# ]3 [7 R. m: l. p* }4 U' k0 a
            Dim dir As DirectoryInfo = New DirectoryInfo(foldername)
( m1 B0 ]' s; G: h            Dim fsi As FileSystemInfo" H. i7 T& i( \# E! w+ t

: K$ h* m5 {4 h- }. ]) ]* i            lw.Open()3 i3 a! ^+ F- ~. a% G
            lw.WriteLine("Parts in directory: " _& Z- Y5 u5 s% e8 L3 y# G
              & Path.GetFullPath(dir.ToString()) & vbCrLf)9 A( [! j! k& W) r6 ?: q9 Z6 s
, y/ T- y6 D6 b: t6 X' N% P( F
            For Each fsi In dir.GetFileSystemInfos()0 U/ ~1 E0 {5 v" i0 M
                If (TypeOf fsi Is FileInfo And fsi.Extension.Contains("prt")) Then
- s" h% g6 L  @) a$ y/ w- V6 d                    Dim f As FileInfo = CType(fsi, FileInfo)
8 k  C+ m9 ^# e+ Q                    Dim size As Long = f.Length, w5 ]+ ~$ N; P+ e6 s! e
                    lw.WriteLine(f.Name & " " & size & "Bytes" & vbCrLf)! @+ L+ u) s2 L! o& ?( T
                End If) e( ^/ u/ [2 \' E
            Next fsi
$ @/ ]- e* I" L& E0 X
  }5 P9 I5 O4 R3 Z/ ~; {        End Sub- @0 |  H* B9 p
4 n% q7 y. f' v) e% F3 m
        Public Shared Function select_directory(ByRef foldername) As System.Windows.Forms.DialogResult
9 S7 t0 P. v; G" ?/ Q0 y8 l$ ^: ]0 L# T
            Dim fbd As FolderBrowserDialog% |  Z! ]) m! \. d
            Dim result As System.Windows.Forms.DialogResult+ l- N# c& p% Z2 U# S  `* q. [1 k
  r% Z; a# S' b
            fbd = New System.Windows.Forms.FolderBrowserDialog()3 h$ I8 ^$ R+ q1 Q) y& x6 J( ^& V  e
            fbd.Description = "Select directory to check"& l3 q! R) t2 Q# A9 Q
            fbd.ShowNewFolderButton = False6 e3 @- F9 E: T$ u1 R/ O& b
            ' start browsing at Desktop folder, uncomment for any other default directory0 C0 u, b* m, k  J# n( @
            ' fbd.SelectedPath = GetEnvironmentVariable("UGII_BASE_DIR")# j2 B* h' q2 E' {0 W) _& c
            ' fbd.SelectedPath = GetEnvironmentVariable("UGII_BASE_DIR") + "\Moldwizard"  o) [* n. A) Y% J- t; W
            ' fbd.SelectedPath = "c:\aaa\bbb", V( e% O! u7 k, @" {( l3 w2 T9 {" n; I
            result = fbd.ShowDialog()$ Q% O4 Z9 H+ I. r' {
            foldername = fbd.SelectedPath7 k% y# ]3 M5 Z/ b* U, z
            fbd.Dispose()% s3 B: O3 z' J7 H
            Return result2 s/ K7 i8 e+ H) [( u! a: b& q6 Q
" T  s- \2 K9 \' ]) L( U1 _
        End Function
+ O( C4 z9 p- D8 d+ r8 ]% w
$ D/ I/ o+ C$ U! `/ s4 l        Public Function GetUnloadOption(ByVal dummy As String) As Integer: w, v- B3 d7 b( k5 ^- o# [: R
            GetUnloadOption = NXOpen.Session.LibraryUnloadOption.AtTermination6 N) O5 r  S( W+ g
        End Function! F' `. S* p; b

4 q7 ^  L: X# R5 o) C# i: u    End Class[/mw_shl_code]
. c* Q; f3 R- ]" \# ]4 l
上海点团信息科技有限公司,承接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 的 方法
; z" ~0 {# i& p1 g
; [# C$ R# ^  p8 T6 O% G" X' N5 }  O$ I& [8 j6 K6 p! O% J
[mw_shl_code=c,true]int0 s3 N4 n0 z( u" F, N
        cnt = 0,- S; l7 L0 v7 b* V5 `- ?
        resp;8 f& ]. L, r" X  H. o+ p. [6 Y0 w
    tag_t( R0 [2 d/ d6 I  Z$ K% I9 |9 o
        part;
9 K" W& P1 ]  |) R6 }5 U4 s    char
) M$ ]6 n3 B8 ~( n; J$ d( s        dirspec[MAX_FSPEC_SIZE+1] = { "" },. ~6 x- B0 U: l8 ?- f! P/ m6 ]
        fname[MAX_FSPEC_SIZE+1],6 ]. _3 Q6 z  G5 @6 B# Q. m
        part_name[MAX_FSPEC_SIZE+1];& p& |& {! V( ^
    UF_PART_load_status_t- w$ g' w. }6 ?( {( ^6 Z, R$ C
        status;
/ Q2 k1 b* B1 T: V
: |# a  K8 f+ M" e. ?# Z    if (UF_CALL(UF_initialize())) return 1;; P0 X/ p5 U( s+ m: O

* n- l" X3 l) {  Y    while (printf("Enter directory path:\n") && gets(dirspec) &&
& d2 P  J0 F- f- I$ A7 E        strlen(dirspec))
! Z+ o# s/ c5 P0 n7 x! l    {
7 Z  }- w9 j! O: Z+ K        uc4508(dirspec, (1<<13)|(1<<11), 0, "*.prt");
' {8 A  A- \. h4 R/ ~5 ^3 c        while ((resp = uc4518()) == 0)
  W4 Z$ T$ y7 L/ L2 U. w4 \        {
" V, ~# Z2 @  N; {8 G2 n6 R6 A            UF_CALL(uc4600(fname));. D" U, E: p+ x, h% T
            UF_CALL(uc4575(dirspec, 2, fname, part_name));5 E- R* X. a' w* v

- Q* \9 S! E( y1 S+ R            ECHO( "%d.  %s\n", ++cnt, part_name);" i5 ^! H  E9 }

# i) X; X- E- d& K            UF_CALL(UF_PART_open(part_name, &part, &status));
. T. N& C% |& M( o2 V- O+ A            if (status.n_parts > 0) report_load_status(&status);
3 i1 q* s* J* T* A' V            if (!status.failed)  w7 c: n/ t7 J1 n
            {; ~* w) i: ]1 a. Q' n/ u
                do_it();
5 T3 B) E3 v0 o8 h* [8 d                UF_PART_close_all();9 x9 \% m. V" z6 I8 E- b& q1 Z
            }2 _9 h0 ~2 k/ G5 [
        }6 }/ ?* R7 J& O9 G: y9 o

7 _: D. ?4 |& c( f4 s" J        UF_CALL(uc4548());
3 n: o2 a# a1 Q5 L
3 P# `" a$ m1 L- u        ECHO("\nProcessed %d parts.\n", cnt);( D% [( ]/ s6 ?! s' K0 c
    }[/mw_shl_code]6 ~0 Z+ r) w/ a- F7 I1 G
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了