iCAx开思工具箱

标题: 找到的UG中使用MFC的文章,希望对大家有帮助 [打印本页]

作者: poncho_wang    时间: 2004-8-31 15:36
标题: 找到的UG中使用MFC的文章,希望对大家有帮助
   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
作者: cqingwanglei    时间: 2004-8-31 17:02
我第一个顶
作者: dong28109    时间: 2004-12-17 19:52

作者: tatata    时间: 2004-12-22 23:11
这是zjb的文章。
作者: moshaocong    时间: 2004-12-29 11:39
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++
报错




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