找回密码 注册 QQ登录
一站式解决方案

iCAx开思网

CAD/CAM/CAE/设计/模具 高清视频【积分说明】如何快速获得积分?快速3D打印 手板模型CNC加工服务在线3D打印服务,上传模型,自动报价
查看: 16497|回复: 4
打印 上一主题 下一主题

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

[复制链接]
跳转到指定楼层
1
发表于 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空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 赞一下!赞一下!
2
发表于 2004-8-31 17:02:24 | 只看该作者
我第一个顶
3
发表于 2004-12-17 19:52:02 | 只看该作者
4
发表于 2004-12-22 23:11:53 | 只看该作者
这是zjb的文章。
5
发表于 2004-12-29 11:39:24 | 只看该作者
e:\my_source\my_first\first_dlg_template.c(458) : fatal error C1010: unexpected end of file while looking for precompiled header directive
请高手看看我的,照你的话用UG生成一个*.c *.h文件,复制导入vc++
报错
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3D打印手板模型快速制作服务,在线报价下单!

QQ 咨询|手机版|联系我们|iCAx开思网  

GMT+8, 2024-12-26 15:51 , Processed in 0.026320 second(s), 14 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2024 www.iCAx.org

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