iCAx开思工具箱

标题: UG二次开发之VS.net设置 [打印本页]

作者: zengshengqu    时间: 2006-12-14 21:39
标题: UG二次开发之VS.net设置
看到一片帖子:用vs。net配置进行UG二次开发,可是那是使用MFC dialog进行开发,如果要使用UGstyler,那应该怎么配置呢?(清华的那本《UG应用开发与实例教程》上用MFC dll,和UG sytler开发,讲的很清楚)
应用VC.net实现UG二次开发的环境配置及实例
Win2000中文版平台:UG NX2英文版 + VC.net英文版

1.建立目录application,startup
  在D盘根目录下建立UG目录D:\UG,在里面分别建立application和startup子目录
  D:\UG\application用于放置*.dll,*.ilk文件(用VS.net生成对话框资源)
             或者*.dll, *.dlg(用UG styler生成的对话框资源)
  D:\UG\startup 用于放置*.men文件,实现菜单配置
2.环境变量的设置
  我的电脑->属性->环境变量
  添加变量UGII_YG_DIR,变量值为D:\UG
  添加变量UGII_VENDOR_DIR,变量值为%UGII_YG_DIR%
3.启动VC.net
  New->Project->MFC->MFC DLL
  输入Project名称MyProject,点击OK,其余取默认值即可。
4.在MyProject.cpp中添加下列函数:
  int DisplayDialog(CWnd* pParent);//显示非模态对话框
  extern "C" DllExport void ufusr(char *param, int *retcode, int rlen);//UG 程序入口
  extern "C" void ufusr_cleanup(void);
  extern "C"  int ufusr_ask_unload(void);
  具体代码见MyProject.cpp
5.增加对话框资源
  增加ID为IDD_DIALOG对话框,并添加ID分别为IDC_ALLERT和IDC_INPUT的BUTTON
  为对话框增加以CDialog为基类的类 CMyDlg
6.在MyProject.cpp中添加#include"MyDlg.h"
  在MyProject.h中添加UG的头文件
        #include <uf.h>    //Add UG head files
        #include <uf_defs.h>
        #include <uf_exit.h>
        #include <uf_ui.h>
        #include <uf_modl.h>
  VC.net中Include地址设置:
  Tools->Option->Projects->VC++ Directories->Show Directories for->
        选择Include Files->添加相应的地址,我的地址是:
  C:\Program Files\EDS\Unigraphics NX 2.0\UGOPEN
7.添加库文件
  在Solution Explorer中,右键点击MyProject->Add->Add Existing Item...
  选择到UGOPEN目录,我的目录为C:\Program Files\EDS\Unigraphics NX 2.0\UGOPEN
  文件类型选择All Files(*.*),文件名称键入*.lib,点击Open
  可以全部选择出现的5个lib文件,多选了没坏事;不过我一般只选择
          libopenintpp.lib,libufun.lib和libugopenint.lib三个
8.如果生成基于对话框的类名称不是CMyDlg或者对话框ID不是IDD_DIALOG
  修改MyProject.cpp中函数DisplayDialog(CWnd* pParent)两行相应的代码:
        CMyDlg* dlg=new CMyDlg();
        BOOL ret=dlg->Create(IDD_DIALOG);
9.编译,将Debug目录下MyProject.dll,MyProject.ilk文件 copy至D:\UG\application;
  在D:\UG\startup目录下建立style.men文件,具体内容见附件。
  避免每次Copy MyProject.dll,MyProject.ilk文件小技巧:
  右键点击Solution Explorer中MyProject->Property->linker->General
        ->Output File->你的application目录,例如我的为
        D:/UG/application/MyProject.dll, 特别注意这里是"/"。
10.运行UG
   可以看见,在Help菜单前出现了YG下拉菜单,点击MyProject到目前为止已经迈出了成功的一大步。
11.添加对话框中Alert和Input Button的事件响应,均为鼠标单击产生事件响应
   在MyDlg.cpp中添加函数
        void CMyDlg::OnClickedAllert();
        void CMyDlg::OnBnClickedInput();
   具体代码见附件。
   编译,运行UG可以看到点击Alert和Input按钮已经有了事件响应。
12.大功告成,至于以后代码如何添加还需自己在此基础上多多思考。
作者: hsf2008    时间: 2006-12-16 19:21
好!因为用vs2005配置不成功,我都打算改用vc6.0了!




欢迎光临 iCAx开思工具箱 (https://t.icax.org/) Powered by Discuz! X3.3