iCAx开思工具箱

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 24912|回复: 4
打印 上一主题 下一主题

找到的UG中使用MFC的文章,希望对大家有帮助

[复制链接]
跳转到指定楼层
楼主
发表于 2004-8-31 15:36:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册登录,享用更多网站功能!

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

x
   1) 在VC的应用程序创建向导中选择MFC AppWizard(dll);
    2) 选择应用程序类型为:Regular DLL using shared MFC DLL;
    3) 结束创建应用程序的过程;
    4) 将UG库文件(libugopenint.lib,libufun.lib)加入所创建的项目。
    5) 结束
熟悉UG开发的人都知道UG应用程序的入口函数是ufsta,所以下一步的工作就是在应用程序中添加UG/Open函数入口ufsta。这个过程很简单,可以把UG所提供的例子程序中的主函数直接复制过来,或者采用UG/Open AppWizard创建一个项目,然后把主函数复制过来就可以了。
  
  一个例子的源程序
  
    以下是我们做的一个在UG中显示模态对话框的例子,为了方便起见,删除了所有的注释语句。CMyDialog是采用MFC创建的一个对话框类,函数 DisplayDialog的功能是显示显示模态对话框。其他的代码基本上都是由MFC AppWizard或者UG/Open AppWizard创建的,十分简单。由此可以看出,UG应用程序经过这样改造之后,调用其它的MFC类已经不成问题。因此就实现了利用MFC来开发UG 的应用程序的功能。
   
  
#include "stdafx.h"
  
#include "ccc.h"
  
//以下代码与UG有关
  
#include  
  
#include  
  
#include  
  
#include "resource.h"
  
#include "MyDialog.h"
  
void DisplayDialog()
  
{
  
       AFX_MANAGE_STATE(AfxGetStaticModuleState());
  
       CMyDialog dlg;
  
       dlg.DoModal();
  
}
  
extern "C" DllExport void ufsta( char *param, int *returnCode, int rlen )
  
{
  
    int errorCode = UF_initialize();
  
     DisplayDialog ();
  
    if ( 0 == errorCode )
  
    {
  
        errorCode = UF_terminate();
  
    }
  
}
  
extern "C" void ufusr_cleanup(void)
  
{
  
}
  
extern "C"  int ufusr_ask_unload( void )
  
{
  
    return( UF_UNLOAD_UG_TERMINATE );
  
}
  
//以下代码由MFC AppWizard创建
  
BEGIN_MESSAGE_MAP(CCccApp, CWinApp)
  
//{{AFX_MSG_MAP(CCccApp)
  
        // NOTE - the ClassWizard will add and remove mapping macros here.
  
        //    DO NOT EDIT what you see in these blocks of generated code!
  
//}}AFX_MSG_MAP
  
END_MESSAGE_MAP()
  
CCccApp::CCccApp()
  
{
  
}
  
CCccApp theApp;
    4. 结束语
  
    本文中提出的应用程序在下列环境下运行通过:  
    操作系统:Windows 2000 Server (Service Pack 2),
    UG版本:UG 18.0微机版
    编译环境:Microsoft Visual C++ 6.0
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 支持支持
沙发
发表于 2004-8-31 17:02:24 | 只看该作者

马上注册登录,享用更多网站功能!

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

x
板凳
发表于 2004-12-17 19:52:02 | 只看该作者

马上注册登录,享用更多网站功能!

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

x
地板
发表于 2004-12-22 23:11:53 | 只看该作者

马上注册登录,享用更多网站功能!

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

x
5
发表于 2004-12-29 11:39:24 | 只看该作者

马上注册登录,享用更多网站功能!

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

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手板模型制作,在线3D打印服务

QQ|小黑屋|手机版|开思工具箱 CAD工具箱_CAM工具箱  

GMT+8, 2024-11-27 05:17 , Processed in 0.018075 second(s), 8 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2024 www.iCAx.org

快速回复 返回顶部 返回列表