NX二次开发-创建NX9 NXOpenCPP Wizard开发向导模板
这篇文章,我在CSDN,在唐工论坛都发过。http://www.nxopen.cn/forum.php?mod=viewthread&tid=2039&highlight=NX9
博客园作为我技术博客的大本营,还是在发一遍吧。做个存档。
NX9+VS2012
此方法应该适用于NX10以下的版本,NX6-NX9应该都是可以的,我只测试了NX9,其他版本是否可以大家可以测试一下。
做NX二次开发的兄弟应该都知道从NX10开始UGOPEN下的vs_files里的开发向导模板有两个,一个OPEN的,一个OPEN NXOpen C++的,但是以前的NX版本只有一个OPEN向导模板,没有NXOpen C++的模板。
以NX9为例,NX9的安装目录UGOPEN下的vs_files里VC只有NX9_Open的开发向导模板。
首先我们先把自己电脑上NX11(只要是NX10及以上版本都有NXOpen C++模板)的NXOpen C++模板考出来,

打开VC

先打开vcprojects

复制出前三个带NXOpen C++的文件到一个空白文件夹里我们去修改,
修改内容:
如果你不知道怎么修改,就按照我下面的步骤一步步来。
1.三个文件的名字重命名如下

2.打开NX9_NXOpenCPP和NX9_NXOpenCPP,修改里面的内容如下(如果你不知道怎么修改,就去看NX9的OPEN模板对应的文件,打开照着一个个对应改)

Wizard=VsWizard.VsWizardEngine.11.0这个地方的版本号指向的就是你当前VS所对应的版本号,我的是NX9对应VS2012编译器去做的开发。如果你是别的版本编译器,就要把11.0改成所对应的,个人建议严格按照西门子官方对应的VS编译器去做开发。至于每个NX版本对应哪个VS去查帮助。

3.将这三个文件复制到VS目录里的D:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcprojects下

4.将NX11_NXOpenCPP考到一个空白文件夹里修改

5.修改内容如下,修改文件夹名字。

6.打开NX9_NXOpenCPP\scripts\1033里的default.js文件,修改模板里的附加依赖性.lib

7.此处的修改,打开NX9_Open\scripts\1033里的default.js文件,对照着去删除对于的.lib(因为NX11的NXOPEN C++模板比NX9多了很多.lib)
我们从下往上看,对照着lib去删,当然你也可以不删除,替换成别的.lib,只要编译能通过就行。反正我就直接删掉了。

8.将NX9_NXOpenCPP\html\1033里的三个htm文件用文本编辑器打开,把三个文本里所有NX11替换成NX9

9.将修改后的NX9_NXOpenCPP文件夹考到
D:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\VCWizards里

10.打开VS2012就可以看到NX9 NXOpenCPP Wizard开发向导模板,


11.如果你进来后,先进行编译,发现编译不通过,出现了如下问题,解决方法如下:

解决方法如下:
打开 D:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\VCWizards\NX9_NXOpenCPP\scripts\1033'
在 default.js 中注释掉
//CLTool.AdditionalOptions = "/d1scalableinclude-“
然后在新建一个项目,在编译就可以了。
我们写两句代码测试一下,


阿飞
2021年9月2日
NX二次开发-创建NX9 NXOpenCPP Wizard开发向导模板的更多相关文章
- NX二次开发-创建(临时)坐标系
函数:UF_CSYS_create_csys() . UF_CSYS_create_temp_csys() 函数说明:创建坐标系 .创建临时坐标系 用法: #include <uf.h> ...
- NX二次开发-UFUN拉伸函数UF_MODL_create_extruded
NX9+VS2012 //NX二次开发中常用拉伸函数为UF_MODL_create_extruded2,但是此函数不能拉伸片体, //想要拉伸片体用函数UF_MODL_create_extruded. ...
- NX二次开发-UFUN拉伸函数UF_MODL_create_extruded2
NX9+VS2012 //NX二次开发中常用拉伸函数为UF_MODL_create_extruded2,但是此函数不能拉伸片体, //想要拉伸片体用函数UF_MODL_create_extruded. ...
- NX二次开发-NX+VS写代码设断点调试技巧
在做NX二次开发的时候写完代码,编译可以通过,但是执行的时候却没有反应,或者得到的结果不对,说明肯定有地方传值出错了.我在查找代码错误的时候有几种方法:1.uc1601打印函数输入和输出的值看对不对. ...
- NX二次开发-使用NXOPEN C++向导模板做二次开发
版本 NX9+VS2012 1.怎么往VS软件里添加VC,C#,VB向导模板 先到NX安装目录下UGOPEN文件夹里找到这三个文件夹 拷贝到VS的安装目录下 这里有几个注意事项,VS2017,VS20 ...
- NX二次开发-基于MFC界面的NX对Excel读写操作(OLE方式(COM组件))
NX二次开发API里没有对EXCAL读写操作的相关函数,市面上有很多种方法去实现,比如UFUN调KF,ODBC,OLE(COM组件)等等.这里我是用的OLE(COM组件)方式去做的,这种在VC上创建的 ...
- NX二次开发-基于NX开发向导模板的NX对Excel读写操作(OLE方式(COM组件))
在看这个博客前,请读者先去完整看完:NX二次开发-基于MFC界面的NX对Excel读写操作(OLE方式(COM组件))https://ufun-nxopen.blog.csdn.net/article ...
- NX二次开发-基于MFC界面对话框与NX交互的开发
打开VS2013 点击新建,选择MFC DLL 点击确定 点下一步 什么都不改,直接点完成 进来之后先编译一下,看是否编译成功 打开项目属性,更改这几处 $(UGII_BASE_DIR)\ugopen ...
- NX二次开发-BlockUI对话框嵌套MFC对话框制作进度条
半年前在一些QQ群看到有大神NX二次开发做出了进度条,那个时候我还不会弄,也不知道怎么弄得,后来断断续续得研究了一下,直到今天我把它做出来了.内心还是很喜悦的!回想自己这两年当初从没公司肯给我做NX二 ...
随机推荐
- 关于Vmware-Tools的安装问题:Please re-run this program as the super user. Execution aborted.
点击VM-Install VMware Tools在桌面上出现一张光盘包含3个文件,分别为manifest.txt:Vmware-tools-版本号.rpm和Vmware-tools-版本号.tar. ...
- springmvc学习指南 之---第27篇 spring如何实现servlet3.0无web.xml 配置servlet对象的
writedby 张艳涛 基于web.xml配置,有人说麻烦,tomcat给按照servlet3.0,实现了基于注解@WebServlet,有人说springmvc的springmvc.xml配置麻烦 ...
- jvm源码解读--13 gc_root中的栈中oop的mark 和copy 过程分析
粘贴源码 package com.test; import java.util.Random; public class Test { static int number=12; private in ...
- DC-7靶机
仅供个人娱乐 靶机信息 下载地址:http://www.five86.com/downloads/DC-7.zip 一.主机扫描 二.信息收集 或者 python3 cmseek.py --url h ...
- 外网远程顶级域名连接群晖的WebDAV文件服务映射盘符
外网远程顶级域名连接群晖的WebDAV文件服务映射盘符 https://www.cnblogs.com/delphixx/p/11846546.html 电子文件管理规范 1.手机拍照截屏 ...
- SprintBoot简单入门
1.什么是SpringBoot SpringBoot是基于Spring的基础上提供了一套全新的框架,其目的是为了在开发时简化Spring的相关配置及开发过程.在SpringBoot未出来之前,准备搭建 ...
- sqli-labs 靶场笔记
sqli-labs 靶场笔记 冲冲冲,好好学习 2020年1月12号 先来点铺垫 分类: 按照请求方法分类: 1.Get型注入:注入参数在get的参数里. 2.POST型注入:注入参数在POST的参数 ...
- Sql Server备份表,动态生成表名称
1.常用的数据库备份表语句 SELECT * INTO tableNameNew FROM tableName 2.动态备份表,且备份表名称后面增加三位随机字符和当前日期 1 DECLARE @bak ...
- 🏆【Java技术专区】「编译器专题」重塑认识Java编译器的执行过程(消除数组边界检查+公共子表达式)!
前提概要 Java的class字节码并不是机器语言,要想让机器能够执行,还需要把字节码翻译成机器指令.这个过程是Java虚拟机做的,这个过程也叫编译.是更深层次的编译. 在编译原理中,把源代码翻译成机 ...
- 软件安装管理(RPM)
目录 一.linux应用程序 1.1 应用程序与系统命令关系 1.2 典型应用程序的目录结构 1.3 常见的软件包封装工具 二.RPM软件包管理工具 2.1RPM软件包管理器Red-Hat Packa ...