1、在我们安装UG的时候,在安装路径的..\Siemens\NX 9.0\UGOPEN\vs_files目录下有三个文件夹,分别是VB、VC、VC#,这是UG在VS中支持二次开发的语言和引导文件。我们将这三个文件夹复制到VS安装目录下对应的VB、VC、VC#文件夹中,VS会自动载入该模板。
2、打开Visual Studio 2015,在新建项目窗口中的VB、VC++、VC#对应模块中可以看到NX9 Open Wizard模版(这里我安装的是Visual Studio 2015和NX9.0)。
3、创建NX项目时遇到如下错误提示:找不到指定的模组,这是因为NX配置中指向的Visual Studio 开发版本与当前安装的Visual Studio 版本不匹配。
4、进入VS的安装目的...VC\vcprojects目录下,打开NX9_Open.vsz文件,将里面的Visual Studio版本号改为你安装的Visual Studio版本,这里我安装的是Visual Studio 2015,对应的是14.0。同理VC、VB也一样,将对应的NX9_VB.vsz、NX9_VCS.vsz文件中的版本更新下就可以使用啦。
5、现在我们就可以新建一个NX项目了,根据提示选择你需要创建的程序类型,是内部式还是外部式的,外部式无法利用UG的交互界面。接着需要选择开发语言C或C++,Use Open++ Calls是是否使用Use Open++的回调函数。
6、下一步选择激活应用程序的方法和卸载程序的方法,Automatically (ufsta)为使用ufsta方法作为入口函数,UG启动时自动加载;Explicitly (ufusr)为使用ufsta方法作为入口函数,在UG中选择程序手动加载;From a UserExit为使用用户出口函数作为函数入口,当用户执行某个功能时激活程序。卸载程序分别是当UG进程结束时自动卸载、当应用程序结束时自动卸载和手动选择程序卸载。
7、完成之后我们就创建了一个NX9 Open Wizard1项目了,程序中自动添加了ufsta( char *param, int *returnCode, int rlen )、u熠硒勘唏fusr_ask_unload( void )和report_error( char *file, int line, char *call, int irc)函数,其中ufsta( )是UG的入口函数,ufusr_ask_unload()是卸载处理函数,report_error()是错误处理函数,主要工作ufsta( )中完成。