vc dll 高手瞧过来

hilter 2002-07-09 03:01:27
我要将一基于对话框的vc程序形成dll 请问是直接移植类还是
需要建dll时形成自己的对话框 然后在原程序移些需要的东西
过来补充
望在家多多指教!
...全文
24 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
WooSir 2002-07-10
  • 打赏
  • 举报
回复
c:\program files\microsoft visual studio\myprojects\bluedll5_1\bluecommdlg.h(23) : error C2065: 'IDD_BLUECOMM_DIALOG' : undeclared identifier
那对于这类错误怎么处理啊

在你的CYourDLLDlg头文件中加入#include "resource.h"
WooSir 2002-07-10
  • 打赏
  • 举报
回复
c:\program files\microsoft visual studio\myprojects\bluedll5_1\bluecommdlg.h(23) : error C2065: 'IDD_BLUECOMM_DIALOG' : undeclared identifier
那对于这类错误怎么处理啊

在你的CYourDLLDlg头文件中加入#include "resorcr.h"
WooSir 2002-07-10
  • 打赏
  • 举报
回复
采用扩展动态库可以导出方便地这个MFC对话框类。先在该扩展动态库工程中
添加对话框资源,然后用CLASSWIZARD生成对应类,并在头文件类声明中加入AFX_EXT_CLASS ,如下示:
class AFX_EXT_CLASS CYourDLLDlg: public CDialog
{.....}
在使用该DLL的应用程序中加入这个头文件,并将其内容删减为
class AFX_EXT_CLASS CYourDLLDlg: public CDialog
{
public:
CYourDLLDlg(CWnd* pParent = NULL); // standard constructor
~CYourDLLDlg(); // standard deconstructor
};
加上该动态库的LIB文件链接,应用程序就可像使用自己的对话框一样使用该动态库中的CYourDLLDlg
Wargod2002 2002-07-10
  • 打赏
  • 举报
回复
把资源也copy过去拉,不要直接copy
用vc同时打开两个资源文件,然后把
需要的复制过去
hilter 2002-07-10
  • 打赏
  • 举报
回复
c:\program files\microsoft visual studio\myprojects\bluedll5_1\bluecommdlg.h(23) : error C2065: 'IDD_BLUECOMM_DIALOG' : undeclared identifier
那对于这类错误怎么处理啊
shorrow 2002-07-10
  • 打赏
  • 举报
回复
如果不能移植过去的话就需要
shorrow 2002-07-10
  • 打赏
  • 举报
回复
既然可以移植类的话,就用不着新建了,如果移植不成功则需要。
Wargod2002 2002-07-10
  • 打赏
  • 举报
回复
是啊,你把文件copy到dll工程所在的目录,再把
它们加入到工程里不就行了
hilter 2002-07-10
  • 打赏
  • 举报
回复
是需要在dll里新建一个对话框吗?
hilter 2002-07-10
  • 打赏
  • 举报
回复
是将类移入要做的工程 然后用导出函数吗
我是做一个dll 将一个基于对话框的工程
变为dll
hilter 2002-07-10
  • 打赏
  • 举报
回复
是将类移入要做的工程 然后用导出函数吗
我是做一个dll 将一个基于对话框的工程
变为dll
Wargod2002 2002-07-10
  • 打赏
  • 举报
回复
这还需要例程吗?你做一个dll,里面有一个
对话框,然后你在一个导出函数里domodal它
就这么简单
sunhang 2002-07-10
  • 打赏
  • 举报
回复
extern "C" int WINAPI Call_Dialog()
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
int nRet = 0;
CDialog dDialog;
nRet = dDialog.DoModal();
return nRet;
}

可以带参数以弹出不同的对话框
hilter 2002-07-10
  • 打赏
  • 举报
回复
定义的成员函数,消息映射等如何处理 引入后编译报错
请问一下,是否需要在MFC Appwizard dll内重新做对
话框等工作
jmcooler 2002-07-09
  • 打赏
  • 举报
回复
VC里导出类(特别是资源类,比如对话框类),用Add to Gallery来进行。
即在ClassView里某个要导出的类点击右键,在弹出菜单中选Add to Gallery就可以了。

在另外一个工程里,你可以到菜单Project->Add to Project->Components and Controls...里,选择你刚刚导出的类,然后引入本工程。
签名:jmcooler
hilter 2002-07-09
  • 打赏
  • 举报
回复
能提供一例程吗 ,分数可以在商量
Wargod2002 2002-07-09
  • 打赏
  • 举报
回复
反正类不需要导出,导出函数就行
当然,类必须移到dll里去
hilter 2002-07-09
  • 打赏
  • 举报
回复
是将类移植后做导出函数吧吗?
Wargod2002 2002-07-09
  • 打赏
  • 举报
回复
做一个导出函数
void ShowDlg()
{
CXXDlg dlg;
dlg.Domodal();
}

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧