
适用版本:NX6以上版本

在NX二次开发的过程中,开发人员需要事先布置好开发环境,用于开发测试以及实施人员测试使用。在这个过程中,较为常用的就是批处理文件(*.bat文件)。用批处理文件可以提前将整个程序包所需要的环境变量设置好,不需要每换一个电脑都手动去输入环境变量等信息;修改便捷;多个程序包之间不会互相干涉等优点。但是他有个较为致命的缺点,就是无法自动识别NX的安装路径,导致安装路径一旦变更,就得手动修改NX路径信息。
如图1所示,是一般开发项目的批处理文件,简单粗暴。

基于上述的现状,我们需要解决批处理自动识别NX安装路径的方法,来省去NX安装路径变更导致的多余操作。
我们会发现每个软件安装时都会在计算机的注册表中写入该软件的相关信息,我们正好可以利用这一点。我们用Win + R键呼出【运行】窗口,在窗口内输入“regedit”并回车,即可查看注册表,如图2所示。
图2
我们可以在注册表中找到路径:“计算机HKEY_LOCAL_MACHINESOFTWAREUnigraphics SolutionsNX”,所有已经安装的NX都会在该目录下创建相应的注册表。我们以NX12为例, NX12【项】里有个名为“UGII_BASE_DIR”,值为“”的【字符串值】,这个【字符串值】就是我们想要的NX安装路径。接下来就是用批处理获取该路径。
我们可以使用批处理中的for循环,循环遍历出我们的NX12【项】,然后将【字符串值】的安装路径读取出来,代码如图3所示。读取出来的路径赋值到变量“NX_PATH”中,在变量后面加上“UGIIugraf.exe”就是NX的启动应用程序全路径了。
图3
为了兼容不同版本的开发需求,该批处理可以进一步完善,如图4所示。其中添加了单独设置NX版本的选项,并备注了不同版本对应的值是多少,并添加了防错机制,一旦输入错误版本或未安装版本时,会有相应的信息显示在信息窗口中。
图4
相较于以往的批处理文件,虽然内容增加了许多,但是可以很好的解决使用上的不便。如:不同的电脑之间拷贝批处理时的修改、重装系统后的路径变动、高低版本切换时繁琐的查找NX安装路径等等。当然,该批处理比较适合开发阶段使用,在上线部署时,可以考虑使用安装包方式进行部署,会是更人性化的选择。