- 浏览: 369819 次
- 性别:
- 来自: 苏州
文章分类
- 全部博客 (335)
- C++ (190)
- 设计模式 (43)
- 数据库技术 (5)
- 网络编程 (11)
- 自动化测试 (6)
- Linux (13)
- OpenSSL (10)
- MS Crypt API (5)
- SCM (2)
- English (4)
- Android (10)
- EMV规范 (1)
- Saturn Platform (0)
- C (10)
- SQL (2)
- ASP.NET (3)
- 英语口语学习 (3)
- 调试工具 (21)
- 编译技术 (5)
- UML (1)
- 项目管理 (5)
- 敏捷开发 (2)
- Http Server (6)
- 代码审查、代码分析 (5)
- 面试基础 (10)
- 重点知识 (16)
- STL (6)
- Efficient C++资料 (8)
- 数据结构和算法 (7)
- 读书笔记 (0)
- 开源项目 (4)
- 多线程 (2)
- Console App (6)
- 个人开源项目 (4)
- IBM DevelopWorks (4)
- Java (16)
- 内存泄漏相关调试和检测 (13)
- 软件测试相关技术 (2)
- C# (11)
- Apple Related (1)
- 软件测试和管理 (2)
- EMV (1)
- Python (1)
- Node.js (6)
- JavaScript (5)
- VUE (1)
- Frontend (1)
- Backend (4)
- RESTful API (3)
- Firebase (3)
最新评论
-
u013189503:
来个密码吧
[C++][Logging] 项目中写日志模块的实现 -
wyf_vc:
来个密码啊!!
[C++][Logging] 项目中写日志模块的实现
转自
http://blog.sina.com.cn/s/blog_4b2169480100d196.html
vc6.0 环境下,将MFC Regular DLL封装窗体在里面。
1. File->Projects->MFC AppWizard(dll)->输入RegularDLL;
2. 选择Regular DLL using shared MFC DLL 和 Yes,please
3. 选择ResourceView视图,再RegularDLL resource目录上右键单击->Insert-> Dialog->New
4. 新窗体删除OK和Cancel,新建一个按钮,窗体的ID改为:IDD_DLL_DIALOG,按钮的ID改为:IDC_HELLO_BUTTON
5. 双击新建的按钮->ok创建新类->类名起名为CDllDialog->双击按钮,输入:
MessageBox("此处调用数据库封装","陈梵封装");
6.最最重要的一步×××××××××××××××××××××××
project->Settings 在General选项中选择Use MFC in a Static Library
7.File->New->C++ Source File->global.cpp,内容如下:
8.在StdAfx.h文件中添加#include "resource.h"
9. 打开Resource.h, 内容如下:
http://blog.sina.com.cn/s/blog_4b2169480100d196.html
vc6.0 环境下,将MFC Regular DLL封装窗体在里面。
1. File->Projects->MFC AppWizard(dll)->输入RegularDLL;
2. 选择Regular DLL using shared MFC DLL 和 Yes,please
3. 选择ResourceView视图,再RegularDLL resource目录上右键单击->Insert-> Dialog->New
4. 新窗体删除OK和Cancel,新建一个按钮,窗体的ID改为:IDD_DLL_DIALOG,按钮的ID改为:IDC_HELLO_BUTTON
5. 双击新建的按钮->ok创建新类->类名起名为CDllDialog->双击按钮,输入:
MessageBox("此处调用数据库封装","陈梵封装");
6.最最重要的一步×××××××××××××××××××××××
project->Settings 在General选项中选择Use MFC in a Static Library
7.File->New->C++ Source File->global.cpp,内容如下:
#include "StdAfx.h" #include "DllDialog.h" extern "C" __declspec(dllexport) void ShowDlg(void) { CDllDialog dllDialog; dllDialog.DoModal(); }
8.在StdAfx.h文件中添加#include "resource.h"
9. 打开Resource.h, 内容如下:
//{{NO_DEPENDENCIES}} // Microsoft Developer Studio generated include file. // Used by RegularDll.rc // #define IDD_DLL_DIALOG 1000 #define IDC_HELLO_BUTTON 1000 // Next default values for new objects // //#ifdef APSTUDIO_INVOKED //#ifndef APSTUDIO_READONLY_SYMBOLS //#define _APS_NEXT_RESOURCE_VALUE 1001 //#define _APS_NEXT_COMMAND_VALUE 32771 //#define _APS_NEXT_CONTROL_VALUE 1001 //#define _APS_NEXT_SYMED_VALUE 1000 //#endif //#endif接下来建立一个调用DLL的工程,按钮中加入以下代码就可以调用了。
void CMFCRegularCallDlg::OnButton1() { typedef void (*lpFun)(void); HINSTANCE hDll; //DLL句柄 hDll = LoadLibrary("D:\\CPPPrimerStudy\\DLLStudy\\RegularDLL\\Debug\\RegularDll.dll"); if (NULL==hDll) { MessageBox("RegularDll.dll未找到"); } lpFun addFun; //函数指针 lpFun pShowDlg = (lpFun)GetProcAddress(hDll,"ShowDlg"); if (NULL==pShowDlg) { MessageBox("ShowDlg函数没有在DLL中发现"); } pShowDlg(); FreeLibrary(hDll); }
发表评论
-
FreeRTOS
2022-03-05 16:31 248Ref https://blog.csdn.net/weix ... -
Python: HTTP文件下载压力测试工具
2020-12-15 17:45 490import urllib.request import ... -
[Python][网络爬虫]
2020-09-28 16:36 0#!/usr/bin/python #coding: U ... -
串口通讯相关
2018-11-02 13:44 411https://bbs.csdn.net/wap/topics ... -
[转]C++验证IP是否可以PING通
2018-10-30 17:54 1325https://www.cnblogs.com/guoyz13 ... -
C++/MFC 換皮膚
2018-10-20 11:05 477https://blog.csdn.net/u01123991 ... -
WinCE 截屏 - C++ 代碼
2018-08-31 09:45 574// this function create a bmp ... -
Android NDK搭建環境
2017-11-27 13:25 580https://www.cnblogs.com/ut2016- ... -
8583协议相关
2017-10-17 13:38 5738583相关资料,整理中... -
Java高级应用之JNI
2017-06-19 09:00 600参考link http://www.cnblogs.com/l ... -
C++实现ping功能
2017-04-18 11:21 2155基础知识 ping的过程是向目的IP发送一个type=8的I ... -
OpenSSL 编译环境搭建
2017-03-27 15:01 9061 安裝VS2008到 c:\Program Files (x ... -
最优非对称加密填充(OAEP)
2017-03-25 14:53 1582OpenSSL命令---rsautl http://blog. ... -
[Platform Builder] 设置SVM OS build Env
2016-11-10 11:39 01 copy one OSDesign Project to ... -
[Windows] System Error Codes(GetLastError )0-----5999
2016-10-26 13:28 1881ERROR_SUCCESS 0 (0x0) T ... -
开源Windows驱动程序框架
2016-09-17 21:35 871转自 http://code.csdn.net/news/28 ... -
c/c++代码中执行cmd命令
2016-09-14 14:50 1908转自 http://blog.csdn.net/slixinx ... -
C#使用C++标准DLL实例(包含callback)
2016-09-11 19:44 1086C++编写标准Win32DLL如下 头文件 /***** ... -
C#调用C++的DLL搜集整理的所有数据类型转换方式
2016-09-09 16:07 969转自 http://www.cnblogs.com/zeroo ... -
WinCE CPU使用率计算 测试工具
2016-09-08 16:14 991转自 http://blog.csdn.net/jan ...
相关推荐
本例中的"Regular DLL"是指遵循MFC规范的动态链接库。VC++ 6.0是微软的老版集成开发环境,尽管现在有更新的版本如Visual Studio,但该例子仍然具有学习价值,因为MFC的基本原理和机制并未发生太大变化。 一个MFC ...
但是MFC规则DLL中却不提供DLLMAIN()函数,被MFC给封装了,Win32 DLL倒是有DLLMAIN()函数了,可是却用不了MFC,到网上找资料也很少,后来看到了一篇微软MSDN上的文章,不过是英文的(中文翻译的更看不懂了),看了之后...
MFC规则DLL详细介绍 MFC规则DLL是指在VC++环境下使用MFC框架编写的动态链接库。它不同于MFC扩展DLL,MFC规则DLL的概念体现在两方面:首先,它是MFC的,意味着可以在这种DLL的内部使用MFC;其次,它是规则的,意味着...
在IT行业中,MFC...在提供的"两种方法封装MFC-DLL"文件中,可能包含了示例代码和详细步骤,帮助读者更好地理解和应用这两种封装方法。通过学习和实践,可以加深对MFC-DLL调用的理解,提升软件开发的效率和质量。
接下来,将这些功能封装到DLL中,需要遵循以下步骤: 1. 创建MFC DLL项目:在Visual Studio中选择“新建项目”,然后选择MFC DLL模板,这将生成一个包含MFC支持的DLL工程。 2. 实现Excel功能:在DLL项目中,开发者...
本文将深入探讨MFC扩展DLL(Dynamic Link Library)中的导出类技术,帮助你理解如何创建和使用这类DLL。 MFC扩展DLL与常规DLL的主要区别在于它允许直接使用MFC类。这使得DLL可以包含MFC的成员函数,从而能够更方便...
本文主要介绍了如何使用MFC扩展DLL来导出类的方法,包括创建MFC扩展DLL的步骤、建立输出类、创建窗口类DLL、编译DLL、建立DLL测试程序等。 MFC扩展DLL是指使用MFC框架创建的动态链接库,可以提供公共接口供其他应用...
准备把自绘控件单独封装到DLL类中,尝试使用“使用共享MFC DLL的规则DLL”建立项目,总是无法找到.lib,最终发现应该使用“MFC扩展DLL”类型建立DLL项目。 自带的基本控件都不怎么美观,所以一般开发者都会自定义类...
MFCDLL0.rar是一个包含MFC(Microsoft Foundation Classes)项目的压缩包,该项目的主要目标是将MFC界面功能封装到一个动态链接库(DLL)中,以便其他应用程序能够方便地调用这些功能。MFC是微软提供的C++类库,用于...
创建MFC DLL的步骤如下: 1. **启动新项目**:在VS2019中,选择“新建项目”,然后在模板中找到“MFC DLL”类别。这里可以选择“MFC扩展DLL”或“MFC常规DLL”。 2. **定义接口**:对于MFC扩展DLL,需要定义公共...
提到的博客《MFC下DLL编程(图解)》应该提供了详细的步骤和示例,可以帮助读者更好地理解MFC扩展DLL的创建和使用方法,包括创建项目、编写代码、构建和调试等环节。 总之,MFC扩展DLL是MFC框架中一种强大的工具,...
本篇文章将详细介绍如何在VS2015中创建MFC DLL,并在控制台应用程序中调用其功能。 首先,我们需要创建一个MFC DLL项目。在VS2015中,选择“文件”>“新建”>“项目”,在模板列表中找到“Visual C++”>“MFC”,...
在MFC中,创建DLL通常有两种方式:扩展DLL(Extension DLL)和常规DLL(Regular DLL)。扩展DLL主要用于增强MFC应用程序的功能,而常规DLL则可以独立于MFC应用程序使用。 封装MFC对话框资源时,我们需要在DLL中定义...
一个简单的调用MFC规则DLL的实例,有详细的代码注释和文档说明。欢迎学习编写MFC规则DLL(共享非静态)的同学们下载使用。
本文将对VC++动态链接库编程之MFC扩展DLL进行详细的解释和分析。 一、MFC扩展DLL概论 MFC扩展DLL是指使用MFC类库的动态链接库,它可以与MFC规则DLL共存。在MFC扩展DLL中,可以使用MFC类库,并且可以实现从现有MFC...
调用DLL文件中的对话框_一个DLL的能成功_一个DLL不能成功DllDialogTest VS2010写的 一个基于对话框的MFC程序 然后创建两个常规动态DLL文件 在DLL文件中分别添加对话框 一个DLL的对话框能正常调用 另一个不行 均...
MFC 对话框封装Dll,简单实现,导出接口,导出Class类
创建MFC规则DLL的步骤如下: 1. **初始化项目**:打开Visual Studio,选择“新建项目”,在项目模板中找到MFC类别,然后选择"MFC DLL"模板。记得为项目命名,例如"MFCDLLExample"。 2. **选择DLL类型**:在向导中...
通过以上步骤,我们可以成功地使用MFC封装图像处理功能到DLL中,然后在不同的应用程序中轻松调用这些功能。这不仅提高了代码的重用性,还降低了维护成本。记住,关键在于理解DLL的工作原理,以及如何有效地利用MFC...
MFC扩展DLL是Microsoft Foundation Class (MFC)库中的一个重要概念,主要用于创建可重用的类库,这些类库能够与MFC应用程序进行交互。MFC扩展DLL的主要特点是其接口可以是MFC类的,允许用户从现有的MFC类库中派生新...