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

NX1847 二次开发环境搭建---图文教程

  [复制链接]

2020-1-10 22:05:18 6387 3

admin 发表于 2019-2-4 12:10:31 |阅读模式

admin 楼主

2019-2-4 12:10:31

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

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

x

; J" ?: ~, }1 a, U+ L, e
) B0 x% O0 T0 t7 G! {* C
                               
登录/注册后可看大图
NX1847
二次开发环境搭建
先生们女士们:
让我们一起来学习下新版本基于VS2017的环境搭建方法吧。
学习邀请函
不忘初心
% y/ m7 v4 h9 m; H
                               
登录/注册后可看大图

模板文件放在这里,目录根据自己安装的来确定,有了模板,万事具备(没有模板,自己也可以建-需要参考我们的培训教程了)。拷贝到哪里这里是关键,VS2017的目录发生了变化,简单的说是VC的模板目录,其他的不变,我们把要拷贝的内容和路径,如果用批处理方式的命令,应该如下:

xcopy /i/e/k/h/r/y/q "%UGOPEN_VS_FILES%\VC#\*.*" "%MS_VS_DIR%\VC#\"

xcopy /i/e/k/h/r/y/q "%UGOPEN_VS_FILES%\VC\*.*" "%MS_VS_DIR%\Common7\IDE\VC\"

xcopy /i/e/k/h/r/y/q "%UGOPEN_VS_FILES%\VB\*.*" "%MS_VS_DIR%\VB\"

xcopy /i/e/k/h/r/y/q "%UGOPEN_VS_FILES%\VBVBWizards\*.*" "%MS_VS_DIR%\VBVBWizards\"


( T9 t5 _9 e5 u7 i; d3 b

. P7 g/ T  @9 z. v3 k7 N- L
                               
登录/注册后可看大图
  

没错,我们需要注意的是用C++进行二次开发时候的目录。


  j; o( A& U1 r4 h7 w

关于VS2017的安装,这里稍微啰嗦下,毕竟版本还是有点儿变化。如果你要使用VB,VC,C#,那么果断把这些都选上吧。通过工具--》获取功能与扩展,可以随时安装想需要的模块。
' S# k4 q1 w0 E& Y% `: y3 p

1 Z& D7 |/ d- v3 E+ e
                               
登录/注册后可看大图


. n" W, r; W, m. E3 O! [5 _4 l( D
打开VS2017,新建项目,你将会看到,这样的界面,模板证明可以创建了。
( u7 E' d7 o% Z
                               
登录/注册后可看大图
通过向导,完成后,直接进行编译,你会发现一切正常。
* `3 L8 i( E' k! M- W: X( ~/ G
                               
登录/注册后可看大图
你也许运气好,加了一行代码,编译成功,还弹出了,hello plmhome。
但是别高兴太早,大部分人可能是编译出问题的,接下来我们说下经验的事情(如果没看到这里,那就是没缘分哦,好嗨哦!)

% o% K* I' ~/ k& H; ~  t: Y" V
(1)如果你安装多个NX版本后,注意默认的模板,读取的都是本地$(UGII_BASE_DIR)\ugopen这个目录下面的lib库和相应的开发库,那么问题来了,我怎么知道现在这个环境变量是正确的NX开发版本需要的呢?还有一个问题就是,lib库引入的是否完整,是否是对应的NX版本呢?
  Y$ V9 @% z0 \# S' A2 D0 m
                               
登录/注册后可看大图
尤其对于多个NX版本,同一个VS版本进行开发的时候,如何进行处理,当然每次在项目环境目录下一个个去修改也可以,但是是不是不够快呢?
解决办法很简单,其实我们只需要去把模板进行修改就可以了,这样的话,每次创建的都是正确的配置,看看目前VS2012 环境配置有这么多版本,但是每次都能够正确的调用对应的NX版本库进行开发,先看下:
0 f# n, y# i3 y8 B2 j) i, l; K
                               
登录/注册后可看大图
这里不是直接拷贝模板过来就完事了,因为你拷贝完,调用的默认路径就是UGII_BASE_DIR下面的,并不是对应版本的内容。怎么办?
(1)找到VC目录下的模板:C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\VC\VCWizards\NXOpenCPP\scripts\1033\default.js   和  C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\VC\VCWizards\NXOpen\scripts\1033

; m' b3 `/ @- u( [7 B) ?' v
将所有的含有UGII_BASE_DIR路径的全部改成绝对路径 比如:"C:\\Siemens\\NX1847\\ugopen"; 这样就保证了,这个模板会调用NX1847的ugopen目录,而不是不确定的UGII_BASE_DIR。

0 r; o' O; _7 L: \

+ K! }8 |; o! ]6 V                               
登录/注册后可看大图
其他模板类似。
(2)关于引入库,不用担心,因为发现新版本的JS通过代码的方式自动加载了所有和NX开发相关的lib库,细心之处可以想象,本来还想给大家show下经验的。
if(FSo.item().name.maTCh("^"+nxopencppName)==nxopencppName) //check if file name start with libnxopencpp
                                if(FSo.item().name.slice(FSo.item().name.lastIndexOf(".")+1).toLowerCase() == "lib") //check if file has '.lib' as an extension
                                {
                                        linkLibs =  linkLibs + " " + FSo.item().name;
                                }

4 P- `* K+ A0 S" k
正确的引入后,效果如下啦,再通过模板创建就不用担心了!
% k! o. Y) k5 c6 k  M0 O
                               
登录/注册后可看大图
9 S- y- |; E" T
(3) JA 的录制是二次开发最实用,最不用动脑子的过程,既然你已经选择了适合的开发语言,为何不把录制JA设成默认的语言呢?方法如下啦:NX首选项--》用户默认设置,启动NX后就生效了。

# R8 y4 V7 u1 t! b1 B* P+ R                               
登录/注册后可看大图
(4)关于NX版本和VS对应版本的问题,这里我只是建议下,诚然你可以用一个适合你的版本去做开发,但是建议还是和官方对应的版本靠齐,避免不必要的问题。PLM之家网站上有详细的linux,macos,windows不同版本的编译器和IDE说明可以去参考!
(5)还有的再说啦,困觉!!!
( O* ^# r  f+ t. f/ L

) i: o8 e0 M; h3 A, v" R4 ]                               
登录/注册后可看大图
END
PLM之家plmhome
1 X4 ~& b( K0 O; V7 X: j* I
                               
登录/注册后可看大图
; j& Z$ v+ p% V! \7 f
▲长按二维码“识别”关注
: X. T8 i3 |) N" T7 Q( q, Q
简介: 工业4.0数字化驱动平台PLM之家www.plmhome.com
% D8 U# A7 b: F7 k
' H8 r+ d$ V  S
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

全部回复3

YH2019 发表于 2019-5-20 22:50:19

YH2019 沙发

2019-5-20 22:50:19

图文教程,图片不能看
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

常子0058 发表于 2019-12-12 15:08:25

常子0058 板凳

2019-12-12 15:08:25

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

使用道具 举报

xiaodi868 发表于 2020-1-10 22:05:18

xiaodi868 地板

2020-1-10 22:05:18

楼主,图片看不见!
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了